diff options
author | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-06-27 20:26:20 +0000 |
---|---|---|
committer | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-06-27 20:26:20 +0000 |
commit | 75bd9771f6e44fdd887ee90faac46f403aefc0fc (patch) | |
tree | 354e3067522df9490e905772f73b72bfed8733ae | |
parent | dd1abb6b5f145c5e5f279d8848b5f3ec161fd227 (diff) | |
download | cups-75bd9771f6e44fdd887ee90faac46f403aefc0fc.tar.gz |
Merge changes from CUPS 1.4svn-r7696.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@818 a1ca3aef-8c08-0410-bb20-df032aa958be
289 files changed, 6953 insertions, 1389 deletions
diff --git a/CHANGES-1.3.txt b/CHANGES-1.3.txt index aa85f31d2..ba2785712 100644 --- a/CHANGES-1.3.txt +++ b/CHANGES-1.3.txt @@ -4,6 +4,8 @@ CHANGES-1.3.txt CHANGES IN CUPS V1.3.8 - Documentation updates (STR #2785, STR #2861, STR #2862) + - The scheduler would crash if you started a printer that + pointed to a backend that did not exist (STR #2865) - The ppdLocalize functions incorrectly mapped all generic locales to country-specific locales. - The cups-driverd program did not support Simplified Chinese diff --git a/CHANGES.txt b/CHANGES.txt index 5ada0f3be..410b57e12 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,8 +1,11 @@ -CHANGES.txt - 2008-06-17 +CHANGES.txt - 2008-06-25 ------------------------ CHANGES IN CUPS V1.4b1 + - The USB backend now uses libusb when available (STR #1575) + - Added ppdLocalizeAttr function to get the localized version + of an attribute. - MIME types now support a priority() attribute (STR #2719) - The standard MIME types are now installed in DataDir/mime (STR #2719) diff --git a/Makedefs.in b/Makedefs.in index 27fc8351e..0e5068553 100644 --- a/Makedefs.in +++ b/Makedefs.in @@ -1,5 +1,5 @@ # -# "$Id: Makedefs.in 7016 2007-10-10 22:07:51Z mike $" +# "$Id: Makedefs.in 7687 2008-06-24 01:28:36Z mike $" # # Common makefile definitions for the Common UNIX Printing System (CUPS). # @@ -91,6 +91,7 @@ LIBPNG = @LIBPNG@ LIBSLP = @LIBSLP@ LIBGSSAPI = @LIBGSSAPI@ LIBTIFF = @LIBTIFF@ +LIBUSB = @LIBUSB@ LIBZ = @LIBZ@ # @@ -279,5 +280,5 @@ DBUSDIR = @DBUSDIR@ # -# End of "$Id: Makedefs.in 7016 2007-10-10 22:07:51Z mike $" +# End of "$Id: Makedefs.in 7687 2008-06-24 01:28:36Z mike $" # @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6897 2007-08-30 06:11:59Z mike $" +# "$Id: Makefile 7613 2008-05-22 23:27:52Z mike $" # # Top-level Makefile for the Common UNIX Printing System (CUPS). # @@ -325,5 +325,5 @@ dist: all # -# End of "$Id: Makefile 6897 2007-08-30 06:11:59Z mike $". +# End of "$Id: Makefile 7613 2008-05-22 23:27:52Z mike $". # diff --git a/backend/Makefile b/backend/Makefile index a5e1db3a7..a2d4b1ed0 100644 --- a/backend/Makefile +++ b/backend/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6778 2007-08-08 19:27:51Z mike $" +# "$Id: Makefile 7687 2008-06-24 01:28:36Z mike $" # # Backend makefile for the Common UNIX Printing System (CUPS). # @@ -251,8 +251,8 @@ socket: socket.o ../cups/$(LIBCUPS) libbackend.a usb: usb.o ../cups/$(LIBCUPS) libbackend.a echo Linking $@... - $(CC) $(LDFLAGS) -o usb usb.o libbackend.a $(BACKLIBS) $(LIBS) -usb.o: usb.c usb-darwin.c usb-unix.c + $(CC) $(LDFLAGS) -o usb usb.o libbackend.a $(LIBUSB) $(BACKLIBS) $(LIBS) +usb.o: usb.c usb-darwin.c usb-libusb.c usb-unix.c # @@ -263,5 +263,5 @@ include Dependencies # -# End of "$Id: Makefile 6778 2007-08-08 19:27:51Z mike $". +# End of "$Id: Makefile 7687 2008-06-24 01:28:36Z mike $". # diff --git a/backend/backend-private.h b/backend/backend-private.h index 84feb6b6a..b7912d59d 100644 --- a/backend/backend-private.h +++ b/backend/backend-private.h @@ -1,5 +1,5 @@ /* - * "$Id: backend-private.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: backend-private.h 7586 2008-05-16 23:39:39Z mike $" * * Backend support definitions for the Common UNIX Printing System (CUPS). * @@ -272,5 +272,5 @@ extern int backendSNMPSupplies(int snmp_fd, http_addr_t *addr, /* - * End of "$Id: backend-private.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: backend-private.h 7586 2008-05-16 23:39:39Z mike $". */ diff --git a/backend/ieee1284.c b/backend/ieee1284.c index 8b8579d80..ebbd5d18b 100644 --- a/backend/ieee1284.c +++ b/backend/ieee1284.c @@ -1,9 +1,9 @@ /* - * "$Id: ieee1284.c 7019 2007-10-10 22:48:52Z mike $" + * "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $" * * IEEE-1284 support functions for the Common UNIX Printing System (CUPS). * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -442,5 +442,5 @@ backendGetMakeModel( /* - * End of "$Id: ieee1284.c 7019 2007-10-10 22:48:52Z mike $". + * End of "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $". */ diff --git a/backend/ipp.c b/backend/ipp.c index 83c0dc669..9944220a2 100644 --- a/backend/ipp.c +++ b/backend/ipp.c @@ -1,5 +1,5 @@ /* - * "$Id: ipp.c 7018 2007-10-10 22:14:03Z mike $" + * "$Id: ipp.c 7583 2008-05-16 17:47:16Z mike $" * * IPP backend for the Common UNIX Printing System (CUPS). * @@ -1818,5 +1818,5 @@ sigterm_handler(int sig) /* I - Signal */ /* - * End of "$Id: ipp.c 7018 2007-10-10 22:14:03Z mike $". + * End of "$Id: ipp.c 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/backend/lpd.c b/backend/lpd.c index e8233ab28..76123b32d 100644 --- a/backend/lpd.c +++ b/backend/lpd.c @@ -1,5 +1,5 @@ /* - * "$Id: lpd.c 6910 2007-09-04 20:34:29Z mike $" + * "$Id: lpd.c 7583 2008-05-16 17:47:16Z mike $" * * Line Printer Daemon backend for the Common UNIX Printing System (CUPS). * @@ -1378,5 +1378,5 @@ sigterm_handler(int sig) /* I - Signal */ /* - * End of "$Id: lpd.c 6910 2007-09-04 20:34:29Z mike $". + * End of "$Id: lpd.c 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/backend/pap.c b/backend/pap.c index f89047e1d..f0f194e73 100644 --- a/backend/pap.c +++ b/backend/pap.c @@ -1,5 +1,5 @@ /* -* "$Id: pap.c 7010 2007-10-10 21:08:51Z mike $" +* "$Id: pap.c 7318 2008-02-15 23:24:41Z mike $" * * Copyright 2004-2008 Apple Inc. All rights reserved. * diff --git a/backend/parallel.c b/backend/parallel.c index 84addcb05..bba472095 100644 --- a/backend/parallel.c +++ b/backend/parallel.c @@ -1,5 +1,5 @@ /* - * "$Id: parallel.c 7019 2007-10-10 22:48:52Z mike $" + * "$Id: parallel.c 7343 2008-02-25 19:02:09Z mike $" * * Parallel port backend for the Common UNIX Printing System (CUPS). * @@ -678,5 +678,5 @@ side_cb(int print_fd, /* I - Print file */ /* - * End of "$Id: parallel.c 7019 2007-10-10 22:48:52Z mike $". + * End of "$Id: parallel.c 7343 2008-02-25 19:02:09Z mike $". */ diff --git a/backend/runloop.c b/backend/runloop.c index fbb14fdab..03aa956fe 100644 --- a/backend/runloop.c +++ b/backend/runloop.c @@ -1,5 +1,5 @@ /* - * "$Id: runloop.c 6834 2007-08-22 18:29:25Z mike $" + * "$Id: runloop.c 7647 2008-06-16 17:39:40Z mike $" * * Common run loop APIs for the Common UNIX Printing System (CUPS). * @@ -404,5 +404,5 @@ backendRunLoop( /* - * End of "$Id: runloop.c 6834 2007-08-22 18:29:25Z mike $". + * End of "$Id: runloop.c 7647 2008-06-16 17:39:40Z mike $". */ diff --git a/backend/scsi.c b/backend/scsi.c index 548332772..7040d4bda 100644 --- a/backend/scsi.c +++ b/backend/scsi.c @@ -1,5 +1,5 @@ /* - * "$Id: scsi.c 6834 2007-08-22 18:29:25Z mike $" + * "$Id: scsi.c 7193 2008-01-07 23:01:40Z mike $" * * SCSI printer backend for the Common UNIX Printing System (CUPS). * @@ -227,5 +227,5 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ /* - * End of "$Id: scsi.c 6834 2007-08-22 18:29:25Z mike $". + * End of "$Id: scsi.c 7193 2008-01-07 23:01:40Z mike $". */ diff --git a/backend/serial.c b/backend/serial.c index 3ac7ff659..25dfc8c4f 100644 --- a/backend/serial.c +++ b/backend/serial.c @@ -1,5 +1,5 @@ /* - * "$Id: serial.c 6910 2007-09-04 20:34:29Z mike $" + * "$Id: serial.c 7647 2008-06-16 17:39:40Z mike $" * * Serial port backend for the Common UNIX Printing System (CUPS). * @@ -1297,5 +1297,5 @@ side_cb(int print_fd, /* I - Print file */ /* - * End of "$Id: serial.c 6910 2007-09-04 20:34:29Z mike $". + * End of "$Id: serial.c 7647 2008-06-16 17:39:40Z mike $". */ diff --git a/backend/snmp.c b/backend/snmp.c index 0364ee2a2..b7bafbf56 100644 --- a/backend/snmp.c +++ b/backend/snmp.c @@ -1,5 +1,5 @@ /* - * "$Id: snmp.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: snmp.c 7506 2008-04-29 04:38:47Z mike $" * * SNMP discovery backend for the Common UNIX Printing System (CUPS). * @@ -1311,5 +1311,5 @@ update_cache(snmp_cache_t *device, /* I - Device */ /* - * End of "$Id: snmp.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: snmp.c 7506 2008-04-29 04:38:47Z mike $". */ diff --git a/backend/socket.c b/backend/socket.c index 6f2c80ddf..5992fc5f7 100644 --- a/backend/socket.c +++ b/backend/socket.c @@ -1,5 +1,5 @@ /* - * "$Id: socket.c 6910 2007-09-04 20:34:29Z mike $" + * "$Id: socket.c 7583 2008-05-16 17:47:16Z mike $" * * AppSocket backend for the Common UNIX Printing System (CUPS). * @@ -499,5 +499,5 @@ wait_bc(int device_fd, /* I - Socket */ /* - * End of "$Id: socket.c 6910 2007-09-04 20:34:29Z mike $". + * End of "$Id: socket.c 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/backend/test1284.c b/backend/test1284.c index 2f2766b42..5c9b99963 100644 --- a/backend/test1284.c +++ b/backend/test1284.c @@ -1,5 +1,5 @@ /* - * "$Id: test1284.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: test1284.c 7465 2008-04-18 16:20:11Z mike $" * * IEEE-1284 support functions test program for the Common UNIX Printing * System (CUPS). @@ -83,5 +83,5 @@ main(int argc, /* I - Number of command-line args */ /* - * End of "$Id: test1284.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: test1284.c 7465 2008-04-18 16:20:11Z mike $". */ diff --git a/backend/usb-darwin.c b/backend/usb-darwin.c index f9197173e..28d45f29f 100644 --- a/backend/usb-darwin.c +++ b/backend/usb-darwin.c @@ -1,5 +1,5 @@ /* -* "$Id: usb-darwin.c 6993 2007-09-28 18:05:28Z mike $" +* "$Id: usb-darwin.c 7460 2008-04-16 02:19:54Z mike $" * * Copyright 2005-2008 Apple Inc. All rights reserved. * @@ -2036,5 +2036,5 @@ static void get_device_id(cups_sc_status_t *status, /* - * End of "$Id: usb-darwin.c 6993 2007-09-28 18:05:28Z mike $". + * End of "$Id: usb-darwin.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c new file mode 100644 index 000000000..a2ec1fa57 --- /dev/null +++ b/backend/usb-libusb.c @@ -0,0 +1,680 @@ +/* + * "$Id$" + * + * Libusb interface code for the Common UNIX Printing System (CUPS). + * + * Copyright 2007-2008 by Apple Inc. + * + * These coded instructions, statements, and computer programs are the + * property of Apple Inc. and are protected by Federal copyright + * law. Distribution and use rights are outlined in the file "LICENSE.txt" + * which should have been included with this file. If this file is + * file is missing or damaged, see the license at "http://www.cups.org/". + * + * Contents: + * + */ + +/* + * Include necessary headers... + */ + +#include <usb.h> + + +/* + * Local types... + */ + +typedef struct usb_printer_s /**** USB Printer Data ****/ +{ + struct usb_device *device; /* Device info */ + int conf, /* Configuration */ + iface, /* Interface */ + altset, /* Alternate setting */ + write_endp, /* Write endpoint */ + read_endp; /* Read endpoint */ + struct usb_dev_handle *handle; /* Open handle to device */ +} usb_printer_t; + +typedef int (*usb_cb_t)(usb_printer_t *, const char *, const char *, + const void *); + + +/* + * Local functions... + */ + +static int close_device(usb_printer_t *printer); +static usb_printer_t *find_device(usb_cb_t cb, const void *data); +static int get_device_id(usb_printer_t *printer, char *buffer, + size_t bufsize); +static int list_cb(usb_printer_t *printer, const char *device_uri, + const char *device_id, const void *data); +static char *make_device_uri(usb_printer_t *printer, + const char *device_id, + char *uri, size_t uri_size); +static int open_device(usb_printer_t *printer, int verbose); +static int print_cb(usb_printer_t *printer, const char *device_uri, + const char *device_id, const void *data); + + +/* + * 'list_devices()' - List the available printers. + */ + +void +list_devices(void) +{ + fputs("DEBUG: list_devices\n", stderr); + find_device(list_cb, NULL); +} + + +/* + * 'print_device()' - Print a file to a USB device. + */ + +int /* O - Exit status */ +print_device(const char *uri, /* I - Device URI */ + const char *hostname, /* I - Hostname/manufacturer */ + const char *resource, /* I - Resource/modelname */ + char *options, /* I - Device options/serial number */ + int print_fd, /* I - File descriptor to print */ + int copies, /* I - Copies to print */ + int argc, /* I - Number of command-line arguments (6 or 7) */ + char *argv[]) /* I - Command-line arguments */ +{ + usb_printer_t *printer; /* Printer */ + ssize_t bytes, /* Bytes read/written */ + tbytes; /* Total bytes written */ + char buffer[8192]; /* Print data buffer */ + struct sigaction action; /* Actions for POSIX signals */ + int read_endp, /* Read endpoint */ + write_endp; /* Write endpoint */ + + + fputs("DEBUG: print_device\n", stderr); + + /* + * Connect to the printer... + */ + + while ((printer = find_device(print_cb, uri)) == NULL) + { + _cupsLangPuts(stderr, + _("INFO: Waiting for printer to become available...\n")); + sleep(5); + } + + read_endp = printer->device->config[printer->conf]. + interface[printer->iface]. + altsetting[printer->altset]. + endpoint[printer->read_endp].bEndpointAddress; + write_endp = printer->device->config[printer->conf]. + interface[printer->iface]. + altsetting[printer->altset]. + endpoint[printer->write_endp].bEndpointAddress; + + /* + * If we are printing data from a print driver on stdin, ignore SIGTERM + * so that the driver can finish out any page data, e.g. to eject the + * current page. We only do this for stdin printing as otherwise there + * is no way to cancel a raw print job... + */ + + if (!print_fd) + { + memset(&action, 0, sizeof(action)); + + sigemptyset(&action.sa_mask); + action.sa_handler = SIG_IGN; + sigaction(SIGTERM, &action, NULL); + } + + tbytes = 0; + + while (copies > 0 && tbytes >= 0) + { + copies --; + + if (print_fd != 0) + { + fputs("PAGE: 1 1\n", stderr); + lseek(print_fd, 0, SEEK_SET); + } + + /* + * TODO: Add side-channel and back-channel support, along with better + * error handling for writes. + */ + + while ((bytes = read(print_fd, buffer, sizeof(buffer))) > 0) + { + while (usb_bulk_write(printer->handle, write_endp, buffer, bytes, + 5000) < 0) + { + _cupsLangPrintf(stderr, + _("ERROR: Unable to write %d bytes to printer!\n"), + (int)bytes); + tbytes = -1; + break; + } + + tbytes += bytes; + } + } + + /* + * Close our connection and return... + */ + + close_device(printer); + + return (CUPS_BACKEND_OK); +} + + +/* + * 'close_device()' - Close the connection to the USB printer. + */ + +static int /* I - 0 on success, -1 on failure */ +close_device(usb_printer_t *printer) /* I - Printer */ +{ + if (printer->handle) + { + usb_close(printer->handle); + printer->handle = NULL; + } + + return (0); +} + + +/* + * 'find_device()' - Find or enumerate USB printers. + */ + +static usb_printer_t * /* O - Found printer */ +find_device(usb_cb_t cb, /* I - Callback function */ + const void *data) /* I - User data for callback */ +{ + struct usb_bus *bus; /* Current bus */ + struct usb_device *device; /* Current device */ + struct usb_config_descriptor *confptr;/* Pointer to current configuration */ + struct usb_interface *ifaceptr; /* Pointer to current interface */ + struct usb_interface_descriptor *altptr; + /* Pointer to current alternate setting */ + struct usb_endpoint_descriptor *endpptr; + /* Pointer to current endpoint */ + int conf, /* Current configuration */ + iface, /* Current interface */ + altset, /* Current alternate setting */ + protocol, /* Current protocol */ + endp, /* Current endpoint */ + read_endp, /* Current read endpoint */ + write_endp; /* Current write endpoint */ + char device_id[1024],/* IEEE-1284 device ID */ + device_uri[1024]; + /* Device URI */ + static usb_printer_t printer; /* Current printer */ + + + /* + * Initialize libusb... + */ + + usb_init(); + fprintf(stderr, "DEBUG: usb_find_busses=%d\n", usb_find_busses()); + fprintf(stderr, "DEBUG: usb_find_devices=%d\n", usb_find_devices()); + + /* + * Then loop through the devices it found... + */ + + for (bus = usb_get_busses(); bus; bus = bus->next) + for (device = bus->devices; device; device = device->next) + { + /* + * Ignore devices with no configuration data and anything that is not + * a printer... + */ + + if (!device->config || !device->descriptor.idVendor || + !device->descriptor.idProduct) + continue; + + for (conf = 0, confptr = device->config; + conf < device->descriptor.bNumConfigurations; + conf ++, confptr ++) + for (iface = 0, ifaceptr = confptr->interface; + iface < confptr->bNumInterfaces; + iface ++, ifaceptr ++) + { + /* + * Some printers offer multiple interfaces... + */ + + protocol = 0; + + for (altset = 0, altptr = ifaceptr->altsetting; + altset < ifaceptr->num_altsetting; + altset ++, altptr ++) + { + /* + * Currently we only support unidirectional and bidirectional + * printers. Future versions of this code will support the + * 1284.4 (packet mode) protocol as well. + */ + + if (altptr->bInterfaceClass != USB_CLASS_PRINTER || + altptr->bInterfaceSubClass != 1 || + (altptr->bInterfaceProtocol != 1 && /* Unidirectional */ + altptr->bInterfaceProtocol != 2) || /* Bidirectional */ + altptr->bInterfaceProtocol < protocol) + continue; + + read_endp = -1; + write_endp = -1; + + for (endp = 0, endpptr = altptr->endpoint; + endp < altptr->bNumEndpoints; + endp ++, endpptr ++) + if ((endpptr->bmAttributes & USB_ENDPOINT_TYPE_MASK) == + USB_ENDPOINT_TYPE_BULK) + { + if (endpptr->bEndpointAddress & USB_ENDPOINT_DIR_MASK) + read_endp = endp; + else + write_endp = endp; + } + + if (write_endp >= 0) + { + /* + * Save the best match so far... + */ + + protocol = altptr->bInterfaceProtocol; + printer.altset = altset; + printer.write_endp = write_endp; + printer.read_endp = read_endp; + } + } + + if (protocol > 0) + { + printer.device = device; + printer.conf = conf; + printer.iface = iface; + printer.handle = NULL; + + if (!open_device(&printer, data != NULL)) + { + if (!get_device_id(&printer, device_id, sizeof(device_id))) + { + make_device_uri(&printer, device_id, device_uri, + sizeof(device_uri)); + + if ((*cb)(&printer, device_uri, device_id, data)) + return (&printer); + } + + close_device(&printer); + } + } + } + } + + /* + * If we get this far without returning, then we haven't found a printer + * to print to... + */ + + return (NULL); +} + + +/* + * 'get_device_id()' - Get the IEEE-1284 device ID for the printer. + */ + +static int /* O - 0 on success, -1 on error */ +get_device_id(usb_printer_t *printer, /* I - Printer */ + char *buffer, /* I - String buffer */ + size_t bufsize) /* I - Number of bytes in buffer */ +{ + int length; /* Length of device ID */ + + + if (usb_control_msg(printer->handle, + USB_TYPE_CLASS | USB_ENDPOINT_IN | USB_RECIP_INTERFACE, + 0, 0, + (printer->iface << 8) | + printer->device->config[printer->conf]. + interface[printer->iface]. + altsetting[printer->altset].bAlternateSetting, + buffer, bufsize, 5000) < 0) + { + *buffer = '\0'; + return (-1); + } + + /* + * Extract the length of the device ID string from the first two + * bytes. The 1284 spec says the length is stored MSB first... + */ + + length = (((unsigned)buffer[0] & 255) << 8) + + ((unsigned)buffer[1] & 255); + + /* + * Check to see if the length is larger than our buffer; first + * assume that the vendor incorrectly implemented the 1284 spec, + * and then limit the length to the size of our buffer... + */ + + if (length > (bufsize - 2)) + length = (((unsigned)buffer[1] & 255) << 8) + + ((unsigned)buffer[0] & 255); + + if (length > (bufsize - 2)) + length = bufsize - 2; + + /* + * Copy the device ID text to the beginning of the buffer and + * nul-terminate. + */ + + memmove(buffer, buffer + 2, length); + buffer[length] = '\0'; + + return (0); +} + + +/* + * 'list_cb()' - List USB printers for discovery. + */ + +static int /* O - 0 to continue, 1 to stop */ +list_cb(usb_printer_t *printer, /* I - Printer */ + const char *device_uri, /* I - Device URI */ + const char *device_id, /* I - IEEE-1284 device ID */ + const void *data) /* I - User data (not used) */ +{ + char make_model[1024]; /* Make and model */ + + + /* + * Get the device URI and make/model strings... + */ + + backendGetMakeModel(device_id, make_model, sizeof(make_model)); + + /* + * Report the printer... + */ + + printf("direct %s \"%s\" \"%s USB\" \"%s\"\n", device_uri, make_model, + make_model, device_id); + fflush(stdout); + + /* + * Keep going... + */ + + return (0); +} + + +/* + * 'make_device_uri()' - Create a device URI for a USB printer. + */ + +static char * /* O - Device URI */ +make_device_uri( + usb_printer_t *printer, /* I - Printer */ + const char *device_id, /* I - IEEE-1284 device ID */ + char *uri, /* I - Device URI buffer */ + size_t uri_size) /* I - Size of device URI buffer */ +{ + char options[1024]; /* Device URI options */ + int num_values; /* Number of 1284 parameters */ + cups_option_t *values; /* 1284 parameters */ + const char *mfg, /* Manufacturer */ + *mdl, /* Model */ + *des, /* Description */ + *sern; /* Serial number */ + char tempmfg[256], /* Temporary manufacturer string */ + tempsern[256], /* Temporary serial number string */ + *tempptr; /* Pointer into temp string */ + + + /* + * Get the make, model, and serial numbers... + */ + + num_values = _ppdGet1284Values(device_id, &values); + + if ((sern = cupsGetOption("SERIALNUMBER", num_values, values)) == NULL) + if ((sern = cupsGetOption("SERN", num_values, values)) == NULL) + if ((sern = cupsGetOption("SN", num_values, values)) == NULL) + { + /* + * Try getting the serial number from the device itself... + */ + + int length = usb_get_string_simple(printer->handle, + printer->device->descriptor. + iSerialNumber, + tempsern, sizeof(tempsern) - 1); + if (length > 0) + { + tempsern[length] = '\0'; + sern = tempsern; + } + } + + if ((mfg = cupsGetOption("MANUFACTURER", num_values, values)) == NULL) + mfg = cupsGetOption("MFG", num_values, values); + + if ((mdl = cupsGetOption("MODEL", num_values, values)) == NULL) + mdl = cupsGetOption("MDL", num_values, values); + +#ifdef __APPLE__ + /* + * To maintain compatibility with the original IOKit-based backend on Mac OS X, + * don't map manufacturer names... + */ + + if (!mfg) + +#else + /* + * To maintain compatibility with the original character device backend on + * Linux and *BSD, map manufacturer names... + */ + + if (mfg) + { + if (!strcasecmp(mfg, "Hewlett-Packard")) + mfg = "HP"; + else if (!strcasecmp(mfg, "Lexmark International")) + mfg = "Lexmark"; + } + else +#endif /* __APPLE__ */ + { + /* + * No manufacturer? Use the model string or description... + */ + + if (mdl) + _ppdNormalizeMakeAndModel(mdl, tempmfg, sizeof(tempmfg)); + else if ((des = cupsGetOption("DESCRIPTION", num_values, values)) != NULL || + (des = cupsGetOption("DES", num_values, values)) != NULL) + _ppdNormalizeMakeAndModel(des, tempmfg, sizeof(tempmfg)); + else + strlcpy(tempmfg, "Unknown", sizeof(tempmfg)); + + if ((tempptr = strchr(tempmfg, ' ')) != NULL) + *tempptr = '\0'; + + mfg = tempmfg; + } + + /* + * Generate the device URI from the manufacturer, model, serial number, + * and interface number... + */ + + if (sern) + { + if (printer->iface > 0) + snprintf(options, sizeof(options), "?serial=%s&interface=%d", sern, + printer->iface); + else + snprintf(options, sizeof(options), "?serial=%s", sern); + } + else if (printer->iface > 0) + snprintf(options, sizeof(options), "?interface=%d", printer->iface); + else + options[0] = '\0'; + + httpAssembleURIf(HTTP_URI_CODING_ALL, uri, uri_size, "usb", NULL, mfg, 0, + "/%s%s", mdl, options); + + cupsFreeOptions(num_values, values); + + return (uri); +} + + +/* + * 'open_device()' - Open a connection to the USB printer. + */ + +static int /* O - 0 on success, -1 on error */ +open_device(usb_printer_t *printer, /* I - Printer */ + int verbose) /* I - Update connecting-to-device state? */ +{ + int number; /* Configuration/interface/altset numbers */ + + + /* + * Return immediately if we are already connected... + */ + + if (printer->handle) + return (0); + + /* + * Try opening the printer... + */ + + if ((printer->handle = usb_open(printer->device)) == NULL) + return (-1); + + /* + * Then set the desired configuration... + */ + + if (verbose) + fputs("STATE: +connecting-to-device\n", stderr); + + number = printer->device->config[printer->conf].bConfigurationValue; + while (usb_set_configuration(printer->handle, number) < 0) + { + if (errno != EBUSY) + fprintf(stderr, "DEBUG: Failed to set configuration %d for %04x:%04x\n", + number, printer->device->descriptor.idVendor, + printer->device->descriptor.idProduct); + + goto error; + } + + /* + * Claim interfaces as needed... + */ + + number = printer->device->config[printer->conf].interface[printer->iface]. + altsetting[printer->altset].bInterfaceNumber; + while (usb_claim_interface(printer->handle, number) < 0) + { + if (errno != EBUSY) + fprintf(stderr, "DEBUG: Failed to claim interface %d for %04x:%04x\n", + number, printer->device->descriptor.idVendor, + printer->device->descriptor.idProduct); + + goto error; + } + + if (number != 0) + while (usb_claim_interface(printer->handle, 0) < 0) + { + if (errno != EBUSY) + fprintf(stderr, "DEBUG: Failed to claim interface 0 for %04x:%04x\n", + printer->device->descriptor.idVendor, + printer->device->descriptor.idProduct); + + goto error; + } + + /* + * Set alternate setting... + */ + + number = printer->device->config[printer->conf].interface[printer->iface]. + altsetting[printer->altset].bAlternateSetting; + while (usb_set_altinterface(printer->handle, number) < 0) + { + if (errno != EBUSY) + fprintf(stderr, + "DEBUG: Failed to set alternate interface %d for %04x:%04x\n", + number, printer->device->descriptor.idVendor, + printer->device->descriptor.idProduct); + + goto error; + } + + if (verbose) + fputs("STATE: -connecting-to-device\n", stderr); + + return (0); + + /* + * If we get here, there was a hard error... + */ + + error: + + if (verbose) + fputs("STATE: -connecting-to-device\n", stderr); + + usb_close(printer->handle); + printer->handle = NULL; + + return (-1); +} + + +/* + * 'print_cb()' - Find a USB printer for printing. + */ + +static int /* O - 0 to continue, 1 to stop (found) */ +print_cb(usb_printer_t *printer, /* I - Printer */ + const char *device_uri, /* I - Device URI */ + const char *device_id, /* I - IEEE-1284 device ID */ + const void *data) /* I - User data (make, model, S/N) */ +{ + return (!strcmp((char *)data, device_uri)); +} + + +/* + * End of "$Id$". + */ + diff --git a/backend/usb-unix.c b/backend/usb-unix.c index f18061065..5fbed6ecd 100644 --- a/backend/usb-unix.c +++ b/backend/usb-unix.c @@ -1,11 +1,11 @@ /* - * "$Id: usb-unix.c 6910 2007-09-04 20:34:29Z mike $" + * "$Id: usb-unix.c 7687 2008-06-24 01:28:36Z mike $" * * USB port backend for the Common UNIX Printing System (CUPS). * * This file is included from "usb.c" when compiled on UNIX/Linux. * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -28,7 +28,6 @@ * Include necessary headers. */ -#include "ieee1284.c" #include <sys/select.h> @@ -611,5 +610,5 @@ side_cb(int print_fd, /* I - Print file */ /* - * End of "$Id: usb-unix.c 6910 2007-09-04 20:34:29Z mike $". + * End of "$Id: usb-unix.c 7687 2008-06-24 01:28:36Z mike $". */ diff --git a/backend/usb.c b/backend/usb.c index 396f95ac1..fddd21d2b 100644 --- a/backend/usb.c +++ b/backend/usb.c @@ -1,9 +1,9 @@ /* - * "$Id: usb.c 6910 2007-09-04 20:34:29Z mike $" + * "$Id: usb.c 7687 2008-06-24 01:28:36Z mike $" * * USB port backend for the Common UNIX Printing System (CUPS). * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -30,14 +30,7 @@ # include <ApplicationServices/ApplicationServices.h> #endif /* __APPLE__ */ -#include <cups/backend.h> -#include <cups/cups.h> -#include <stdio.h> -#include <stdlib.h> -#include <errno.h> -#include <cups/string.h> -#include <cups/i18n.h> -#include <signal.h> +#include "backend-private.h" #ifdef WIN32 # include <io.h> @@ -62,7 +55,9 @@ int print_device(const char *uri, const char *hostname, * Include the vendor-specific USB implementation... */ -#ifdef __APPLE__ +#ifdef HAVE_USB_H +# include "usb-libusb.c" +#elif defined(__APPLE__) # include "usb-darwin.c" #elif defined(__linux) || defined(__sun) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__) # include "usb-unix.c" @@ -266,5 +261,5 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ /* - * End of "$Id: usb.c 6910 2007-09-04 20:34:29Z mike $". + * End of "$Id: usb.c 7687 2008-06-24 01:28:36Z mike $". */ diff --git a/berkeley/Makefile b/berkeley/Makefile index 7531c01dd..7852f245f 100644 --- a/berkeley/Makefile +++ b/berkeley/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Berkeley commands makefile for the Common UNIX Printing System (CUPS). # @@ -153,5 +153,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/berkeley/lpc.c b/berkeley/lpc.c index 947186782..a18eb0e71 100644 --- a/berkeley/lpc.c +++ b/berkeley/lpc.c @@ -1,5 +1,5 @@ /* - * "$Id: lpc.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpc.c 7079 2007-11-30 01:58:31Z mike $" * * "lpc" command for the Common UNIX Printing System (CUPS). * @@ -450,5 +450,5 @@ show_status(http_t *http, /* I - HTTP connection to server */ /* - * End of "$Id: lpc.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpc.c 7079 2007-11-30 01:58:31Z mike $". */ diff --git a/berkeley/lpq.c b/berkeley/lpq.c index 7ffb2a8e9..db089867e 100644 --- a/berkeley/lpq.c +++ b/berkeley/lpq.c @@ -1,5 +1,5 @@ /* - * "$Id: lpq.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $" * * "lpq" command for the Common UNIX Printing System (CUPS). * @@ -667,5 +667,5 @@ usage(void) /* - * End of "$Id: lpq.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/berkeley/lprm.c b/berkeley/lprm.c index d00372c55..eeeca538b 100644 --- a/berkeley/lprm.c +++ b/berkeley/lprm.c @@ -1,5 +1,5 @@ /* - * "$Id: lprm.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lprm.c 7261 2008-01-28 23:09:31Z mike $" * * "lprm" command for the Common UNIX Printing System (CUPS). * @@ -223,5 +223,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: lprm.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lprm.c 7261 2008-01-28 23:09:31Z mike $". */ diff --git a/cgi-bin/Makefile b/cgi-bin/Makefile index d0c0c0155..53911d845 100644 --- a/cgi-bin/Makefile +++ b/cgi-bin/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # CGI makefile for the Common UNIX Printing System (CUPS). # @@ -398,5 +398,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c index b54d27fdc..3f94b8826 100644 --- a/cgi-bin/admin.c +++ b/cgi-bin/admin.c @@ -1,5 +1,5 @@ /* - * "$Id: admin.c 7012 2007-10-10 21:22:45Z mike $" + * "$Id: admin.c 7438 2008-04-09 03:27:37Z mike $" * * Administration CGI for the Common UNIX Printing System (CUPS). * @@ -3449,5 +3449,5 @@ match_string(const char *a, /* I - First string */ /* - * End of "$Id: admin.c 7012 2007-10-10 21:22:45Z mike $". + * End of "$Id: admin.c 7438 2008-04-09 03:27:37Z mike $". */ diff --git a/cgi-bin/classes.c b/cgi-bin/classes.c index 39e2d1562..09a3cc64c 100644 --- a/cgi-bin/classes.c +++ b/cgi-bin/classes.c @@ -1,5 +1,5 @@ /* - * "$Id: classes.c 6889 2007-08-29 22:23:35Z mike $" + * "$Id: classes.c 7301 2008-02-13 00:27:52Z mike $" * * Class status CGI for the Common UNIX Printing System (CUPS). * @@ -432,5 +432,5 @@ show_class(http_t *http, /* I - Connection to server */ /* - * End of "$Id: classes.c 6889 2007-08-29 22:23:35Z mike $". + * End of "$Id: classes.c 7301 2008-02-13 00:27:52Z mike $". */ diff --git a/cgi-bin/help-index.c b/cgi-bin/help-index.c index f1d96832f..cb88aee17 100644 --- a/cgi-bin/help-index.c +++ b/cgi-bin/help-index.c @@ -1,5 +1,5 @@ /* - * "$Id: help-index.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: help-index.c 7615 2008-05-25 07:17:07Z mike $" * * Online help index routines for the Common UNIX Printing System (CUPS). * @@ -1327,5 +1327,5 @@ help_sort_words(help_word_t *w1, /* I - Second word */ /* - * End of "$Id: help-index.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: help-index.c 7615 2008-05-25 07:17:07Z mike $". */ diff --git a/cgi-bin/help-index.h b/cgi-bin/help-index.h index d92abbea2..0e6b0b1c7 100644 --- a/cgi-bin/help-index.h +++ b/cgi-bin/help-index.h @@ -1,5 +1,5 @@ /* - * "$Id: help-index.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: help-index.h 7615 2008-05-25 07:17:07Z mike $" * * Online help index definitions for the Common UNIX Printing System (CUPS). * @@ -71,5 +71,5 @@ extern help_index_t *helpSearchIndex(help_index_t *hi, const char *query, #endif /* !_CUPS_HELP_INDEX_H_ */ /* - * End of "$Id: help-index.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: help-index.h 7615 2008-05-25 07:17:07Z mike $". */ diff --git a/cgi-bin/ipp-var.c b/cgi-bin/ipp-var.c index 79cfaf947..4ee9ef867 100644 --- a/cgi-bin/ipp-var.c +++ b/cgi-bin/ipp-var.c @@ -1,5 +1,5 @@ /* - * "$Id: ipp-var.c 6889 2007-08-29 22:23:35Z mike $" + * "$Id: ipp-var.c 7541 2008-05-05 21:22:58Z mike $" * * CGI <-> IPP variable routines for the Common UNIX Printing System (CUPS). * @@ -1384,5 +1384,5 @@ cgiText(const char *message) /* I - Message */ /* - * End of "$Id: ipp-var.c 6889 2007-08-29 22:23:35Z mike $". + * End of "$Id: ipp-var.c 7541 2008-05-05 21:22:58Z mike $". */ diff --git a/cgi-bin/jobs.c b/cgi-bin/jobs.c index 41d58a038..9af1dd744 100644 --- a/cgi-bin/jobs.c +++ b/cgi-bin/jobs.c @@ -1,5 +1,5 @@ /* - * "$Id: jobs.c 6889 2007-08-29 22:23:35Z mike $" + * "$Id: jobs.c 7237 2008-01-22 01:38:39Z mike $" * * Job status CGI for the Common UNIX Printing System (CUPS). * @@ -209,5 +209,5 @@ do_job_op(http_t *http, /* I - HTTP connection */ /* - * End of "$Id: jobs.c 6889 2007-08-29 22:23:35Z mike $". + * End of "$Id: jobs.c 7237 2008-01-22 01:38:39Z mike $". */ diff --git a/cgi-bin/printers.c b/cgi-bin/printers.c index de4d769f5..f90632866 100644 --- a/cgi-bin/printers.c +++ b/cgi-bin/printers.c @@ -1,5 +1,5 @@ /* - * "$Id: printers.c 6889 2007-08-29 22:23:35Z mike $" + * "$Id: printers.c 7301 2008-02-13 00:27:52Z mike $" * * Printer status CGI for the Common UNIX Printing System (CUPS). * @@ -612,5 +612,5 @@ show_printer(http_t *http, /* I - Connection to server */ /* - * End of "$Id: printers.c 6889 2007-08-29 22:23:35Z mike $". + * End of "$Id: printers.c 7301 2008-02-13 00:27:52Z mike $". */ diff --git a/cgi-bin/search.c b/cgi-bin/search.c index 4dc725859..d8f023c28 100644 --- a/cgi-bin/search.c +++ b/cgi-bin/search.c @@ -1,5 +1,5 @@ /* - * "$Id: search.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: search.c 7420 2008-04-01 20:32:00Z mike $" * * Search routines for the Common UNIX Printing System (CUPS). * @@ -370,5 +370,5 @@ cgiFreeSearch(void *search) /* I - Search context */ /* - * End of "$Id: search.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: search.c 7420 2008-04-01 20:32:00Z mike $". */ diff --git a/cgi-bin/template.c b/cgi-bin/template.c index 661f6395b..f20a7a950 100644 --- a/cgi-bin/template.c +++ b/cgi-bin/template.c @@ -1,5 +1,5 @@ /* - * "$Id: template.c 6986 2007-09-25 15:34:52Z mike $" + * "$Id: template.c 7219 2008-01-14 22:00:02Z mike $" * * CGI template function. * @@ -706,5 +706,5 @@ cgi_puturi(const char *s, /* I - String to output */ /* - * End of "$Id: template.c 6986 2007-09-25 15:34:52Z mike $". + * End of "$Id: template.c 7219 2008-01-14 22:00:02Z mike $". */ diff --git a/cgi-bin/var.c b/cgi-bin/var.c index 596b24d0d..7ceb3ecaa 100644 --- a/cgi-bin/var.c +++ b/cgi-bin/var.c @@ -1,5 +1,5 @@ /* - * "$Id: var.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: var.c 7460 2008-04-16 02:19:54Z mike $" * * CGI form variable and array functions. * @@ -1039,5 +1039,5 @@ cgi_unlink_file(void) /* - * End of "$Id: var.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: var.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/conf/Makefile b/conf/Makefile index 4bb31c9ed..8d4ffbf2f 100644 --- a/conf/Makefile +++ b/conf/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7670 2008-06-17 22:42:08Z mike $" # # Configuration file makefile for the Common UNIX Printing System (CUPS). # @@ -136,5 +136,5 @@ uninstall: # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7670 2008-06-17 22:42:08Z mike $". # diff --git a/conf/cupsd.conf.in b/conf/cupsd.conf.in index 8939b8a4b..c48b70626 100644 --- a/conf/cupsd.conf.in +++ b/conf/cupsd.conf.in @@ -1,5 +1,5 @@ # -# "$Id: cupsd.conf.in 6720 2007-07-25 00:40:03Z mike $" +# "$Id: cupsd.conf.in 7680 2008-06-20 17:37:43Z mike $" # # Sample configuration file for the Common UNIX Printing System (CUPS) # scheduler. See "man cupsd.conf" for a complete description of this @@ -82,10 +82,9 @@ DefaultAuthType Basic <Policy authenticated> # Job-related operations must be done by the owner or an administrator... <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document> + AuthType Default Require user @OWNER @SYSTEM Order deny,allow - AuthType Default - Satisfy any </Limit> # All administration operations require an administrator to authenticate... @@ -104,19 +103,17 @@ DefaultAuthType Basic # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> + AuthType Default Require user @OWNER @CUPS_DEFAULT_PRINTADMIN_AUTH@ Order deny,allow - AuthType Default - Satisfy any </Limit> <Limit All> - Order deny,allow AuthType Default - Satisfy any + Order deny,allow </Limit> </Policy> # -# End of "$Id: cupsd.conf.in 6720 2007-07-25 00:40:03Z mike $". +# End of "$Id: cupsd.conf.in 7680 2008-06-20 17:37:43Z mike $". # diff --git a/conf/mime.types b/conf/mime.types index 1852d460c..83a079a77 100644 --- a/conf/mime.types +++ b/conf/mime.types @@ -1,5 +1,5 @@ # -# "$Id: mime.types 6649 2007-07-11 21:46:42Z mike $" +# "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $" # # MIME types file for the Common UNIX Printing System (CUPS). # @@ -173,5 +173,5 @@ application/vnd.cups-raw (string(0,<1B>E) + !string(2,<1B>%0B)) \ application/octet-stream # -# End of "$Id: mime.types 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $". # diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4 index 6e81ea526..a88692f35 100644 --- a/config-scripts/cups-common.m4 +++ b/config-scripts/cups-common.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-common.m4 6964 2007-09-17 21:33:57Z mike $" +dnl "$Id: cups-common.m4 7695 2008-06-26 00:46:24Z mike $" dnl dnl Common configuration stuff for the Common UNIX Printing System (CUPS). dnl @@ -83,14 +83,11 @@ LIBMALLOC="" AC_ARG_ENABLE(mallinfo, [ --enable-mallinfo turn on malloc debug information, default=no]) if test x$enable_mallinfo = xyes; then - AC_CHECK_LIB(c,mallinfo,LIBS="$LIBS"; AC_DEFINE(HAVE_MALLINFO),LIBS="$LIBS") - if test "$ac_cv_lib_c_mallinfo" = "no"; then - AC_CHECK_LIB(malloc,mallinfo, - LIBS="$LIBS" - LIBMALLOC="-lmalloc" - AC_DEFINE(HAVE_MALLINFO), - LIBS="$LIBS") - fi + SAVELIBS="$LIBS" + LIBS="" + AC_SEARCH_LIBS(mallinfo, malloc, AC_DEFINE(HAVE_MALLINFO)) + LIBMALLOC="$LIBS" + LIBS="$SAVELIBS" fi AC_SUBST(LIBMALLOC) @@ -170,6 +167,27 @@ AC_TRY_COMPILE([#include <time.h>],[struct tm t; dnl See if we have the removefile(3) function for securely removing files AC_CHECK_FUNCS(removefile) +dnl See if we have libusb... +AC_ARG_ENABLE(libusb, [ --enable-libusb use libusb for USB printing, default=auto]) + +LIBUSB="" +AC_SUBST(LIBUSB) + +if test x$enable_libusb = xyes; then + check_libusb=yes +elif test x$enable_libusb != xno -a $uname != Darwin; then + check_libusb=yes +else + check_libusb=no +fi + +if test $check_libusb = yes; then + AC_CHECK_LIB(usb, usb_init,[ + AC_CHECK_HEADER(usb.h, + AC_DEFINE(HAVE_USB_H) + LIBUSB="-lusb")]) +fi + dnl Flags for "ar" command... case $uname in Darwin* | *BSD*) @@ -282,5 +300,5 @@ AC_SUBST(FONTS) AC_SUBST(LEGACY_BACKENDS) dnl -dnl End of "$Id: cups-common.m4 6964 2007-09-17 21:33:57Z mike $". +dnl End of "$Id: cups-common.m4 7695 2008-06-26 00:46:24Z mike $". dnl diff --git a/config-scripts/cups-compiler.m4 b/config-scripts/cups-compiler.m4 index 51a5daa6f..8598aebb9 100644 --- a/config-scripts/cups-compiler.m4 +++ b/config-scripts/cups-compiler.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-compiler.m4 6975 2007-09-18 20:37:09Z mike $" +dnl "$Id: cups-compiler.m4 7644 2008-06-16 17:15:47Z mike $" dnl dnl Compiler stuff for the Common UNIX Printing System (CUPS). dnl @@ -543,5 +543,5 @@ case $uname in esac dnl -dnl End of "$Id: cups-compiler.m4 6975 2007-09-18 20:37:09Z mike $". +dnl End of "$Id: cups-compiler.m4 7644 2008-06-16 17:15:47Z mike $". dnl diff --git a/config-scripts/cups-defaults.m4 b/config-scripts/cups-defaults.m4 index f2cff3c2e..80287e806 100644 --- a/config-scripts/cups-defaults.m4 +++ b/config-scripts/cups-defaults.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-defaults.m4 6754 2007-08-01 19:00:07Z mike $" +dnl "$Id: cups-defaults.m4 7649 2008-06-16 17:46:57Z mike $" dnl dnl Default cupsd configuration settings for the Common UNIX Printing System dnl (CUPS). @@ -395,5 +395,5 @@ AC_SUBST(DEFAULT_IPP_PORT) AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT) dnl -dnl End of "$Id: cups-defaults.m4 6754 2007-08-01 19:00:07Z mike $". +dnl End of "$Id: cups-defaults.m4 7649 2008-06-16 17:46:57Z mike $". dnl diff --git a/config-scripts/cups-dnssd.m4 b/config-scripts/cups-dnssd.m4 index 6ef18a702..79997d71f 100644 --- a/config-scripts/cups-dnssd.m4 +++ b/config-scripts/cups-dnssd.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id$" +dnl "$Id: cups-dnssd.m4 7585 2008-05-16 23:13:47Z mike $" dnl dnl DNS Service Discovery (aka Bonjour) stuff for the Common UNIX Printing System (CUPS). dnl @@ -52,5 +52,5 @@ AC_SUBST(DNSSDLIBS) AC_SUBST(MDNS) dnl -dnl End of "$Id$". +dnl End of "$Id: cups-dnssd.m4 7585 2008-05-16 23:13:47Z mike $". dnl diff --git a/config-scripts/cups-ldap.m4 b/config-scripts/cups-ldap.m4 index 14fd549d8..3f5adec23 100644 --- a/config-scripts/cups-ldap.m4 +++ b/config-scripts/cups-ldap.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-ldap.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-ldap.m4 7241 2008-01-22 22:34:52Z mike $" dnl dnl LDAP configuration stuff for the Common UNIX Printing System (CUPS). dnl @@ -36,5 +36,5 @@ AC_SUBST(LIBLDAP) dnl -dnl End of "$Id: cups-ldap.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-ldap.m4 7241 2008-01-22 22:34:52Z mike $". dnl diff --git a/config-scripts/cups-network.m4 b/config-scripts/cups-network.m4 index 347dc9a52..f36318575 100644 --- a/config-scripts/cups-network.m4 +++ b/config-scripts/cups-network.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-network.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-network.m4 7127 2007-12-17 18:05:32Z mike $" dnl dnl Networking stuff for the Common UNIX Printing System (CUPS). dnl @@ -66,5 +66,5 @@ AC_CHECK_HEADERS(AppleTalk/at_proto.h,AC_DEFINE(HAVE_APPLETALK_AT_PROTO_H),, [#include <netat/appletalk.h>]) dnl -dnl End of "$Id: cups-network.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-network.m4 7127 2007-12-17 18:05:32Z mike $". dnl diff --git a/config-scripts/cups-pam.m4 b/config-scripts/cups-pam.m4 index b100053e8..9b49e7ad6 100644 --- a/config-scripts/cups-pam.m4 +++ b/config-scripts/cups-pam.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-pam.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-pam.m4 7149 2007-12-19 19:38:37Z mike $" dnl dnl PAM stuff for the Common UNIX Printing System (CUPS). dnl @@ -86,5 +86,5 @@ AC_SUBST(PAMLIBS) AC_SUBST(PAMMOD) dnl -dnl End of "$Id: cups-pam.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-pam.m4 7149 2007-12-19 19:38:37Z mike $". dnl diff --git a/config-scripts/cups-pdf.m4 b/config-scripts/cups-pdf.m4 index e980f1de5..eaa004f59 100644 --- a/config-scripts/cups-pdf.m4 +++ b/config-scripts/cups-pdf.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-pdf.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-pdf.m4 7449 2008-04-14 18:27:53Z mike $" dnl dnl PDF filter configuration stuff for the Common UNIX Printing System (CUPS). dnl @@ -47,5 +47,5 @@ fi AC_SUBST(PDFTOPS) dnl -dnl End of "$Id: cups-pdf.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-pdf.m4 7449 2008-04-14 18:27:53Z mike $". dnl diff --git a/config-scripts/cups-sharedlibs.m4 b/config-scripts/cups-sharedlibs.m4 index f3962ab85..e4ca18dc0 100644 --- a/config-scripts/cups-sharedlibs.m4 +++ b/config-scripts/cups-sharedlibs.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $" dnl dnl Shared library support for the Common UNIX Printing System (CUPS). dnl @@ -244,5 +244,5 @@ AC_SUBST(IMGLIBS) AC_SUBST(EXPORT_LDFLAGS) dnl -dnl End of "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $". dnl diff --git a/config-scripts/cups-slp.m4 b/config-scripts/cups-slp.m4 index cbeb48527..89f87468c 100644 --- a/config-scripts/cups-slp.m4 +++ b/config-scripts/cups-slp.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-slp.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-slp.m4 7241 2008-01-22 22:34:52Z mike $" dnl dnl OpenSLP configuration stuff for the Common UNIX Printing System (CUPS). dnl @@ -34,5 +34,5 @@ AC_SUBST(LIBSLP) dnl -dnl End of "$Id: cups-slp.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-slp.m4 7241 2008-01-22 22:34:52Z mike $". dnl diff --git a/config-scripts/cups-ssl.m4 b/config-scripts/cups-ssl.m4 index cacf94bef..f5335562c 100644 --- a/config-scripts/cups-ssl.m4 +++ b/config-scripts/cups-ssl.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-ssl.m4 6649 2007-07-11 21:46:42Z mike $" +dnl "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $" dnl dnl OpenSSL/GNUTLS stuff for the Common UNIX Printing System (CUPS). dnl @@ -123,5 +123,5 @@ AC_SUBST(EXPORT_SSLLIBS) dnl -dnl End of "$Id: cups-ssl.m4 6649 2007-07-11 21:46:42Z mike $". +dnl End of "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $". dnl diff --git a/config.h.in b/config.h.in index 5e0c08af1..7c54621fc 100644 --- a/config.h.in +++ b/config.h.in @@ -1,5 +1,5 @@ /* - * "$Id: config.h.in 6930 2007-09-08 00:28:06Z mike $" + * "$Id: config.h.in 7687 2008-06-24 01:28:36Z mike $" * * Configuration file for the Common UNIX Printing System (CUPS). * @@ -571,8 +571,15 @@ #undef HAVE_LRAND48 +/* + * Do we have libusb? + */ + +#undef HAVE_USB_H + + #endif /* !_CUPS_CONFIG_H_ */ /* - * End of "$Id: config.h.in 6930 2007-09-08 00:28:06Z mike $". + * End of "$Id: config.h.in 7687 2008-06-24 01:28:36Z mike $". */ diff --git a/configure.in b/configure.in index 769c53cb9..0425660be 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl -dnl "$Id: configure.in 6717 2007-07-24 23:47:12Z mike $" +dnl "$Id: configure.in 7600 2008-05-20 21:06:23Z mike $" dnl dnl Configuration script for the Common UNIX Printing System (CUPS). dnl @@ -75,5 +75,5 @@ AC_OUTPUT(Makedefs packaging/cups.list init/cups.sh init/cups-lpd cups-config chmod +x cups-config dnl -dnl End of "$Id: configure.in 6717 2007-07-24 23:47:12Z mike $". +dnl End of "$Id: configure.in 7600 2008-05-20 21:06:23Z mike $". dnl diff --git a/cups-config.in b/cups-config.in index 7f53c60ba..1a68a12c7 100755 --- a/cups-config.in +++ b/cups-config.in @@ -1,6 +1,6 @@ #! /bin/sh # -# "$Id: cups-config.in 6649 2007-07-11 21:46:42Z mike $" +# "$Id: cups-config.in 7394 2008-03-21 23:41:43Z mike $" # # CUPS configuration utility. # @@ -151,5 +151,5 @@ while test $# -gt 0; do done # -# End of "$Id: cups-config.in 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: cups-config.in 7394 2008-03-21 23:41:43Z mike $". # diff --git a/cups/Makefile b/cups/Makefile index 3bf135002..6d4a68481 100644 --- a/cups/Makefile +++ b/cups/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7589 2008-05-19 00:13:23Z mike $" # # API library Makefile for the Common UNIX Printing System (CUPS). # @@ -600,5 +600,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7589 2008-05-19 00:13:23Z mike $". # diff --git a/cups/adminutil.c b/cups/adminutil.c index e3adf54b4..95393afd0 100644 --- a/cups/adminutil.c +++ b/cups/adminutil.c @@ -1,5 +1,5 @@ /* - * "$Id: adminutil.c 6930 2007-09-08 00:28:06Z mike $" + * "$Id: adminutil.c 7576 2008-05-15 21:05:14Z mike $" * * Administration utility API definitions for the Common UNIX Printing * System (CUPS). @@ -2382,5 +2382,5 @@ write_option(cups_file_t *dstfp, /* I - PPD file */ /* - * End of "$Id: adminutil.c 6930 2007-09-08 00:28:06Z mike $". + * End of "$Id: adminutil.c 7576 2008-05-15 21:05:14Z mike $". */ diff --git a/cups/adminutil.h b/cups/adminutil.h index 8613a3be4..145dfa0f7 100644 --- a/cups/adminutil.h +++ b/cups/adminutil.h @@ -1,5 +1,5 @@ /* - * "$Id: adminutil.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $" * * Administration utility API definitions for the Common UNIX Printing * System (CUPS). @@ -77,5 +77,5 @@ extern int cupsAdminSetServerSettings(http_t *http, #endif /* !_CUPS_ADMINUTIL_H_ */ /* - * End of "$Id: adminutil.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $". */ diff --git a/cups/api-array.header b/cups/api-array.header index 34b796f4c..c4d28b464 100644 --- a/cups/api-array.header +++ b/cups/api-array.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-array.header 7266 2008-01-29 02:15:29Z mike $" Array API header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-array.shtml b/cups/api-array.shtml index ae2787fec..bacf48307 100644 --- a/cups/api-array.shtml +++ b/cups/api-array.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-array.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $" Array API introduction for the Common UNIX Printing System (CUPS). diff --git a/cups/api-cups.header b/cups/api-cups.header index a706b55af..c95b611fd 100644 --- a/cups/api-cups.header +++ b/cups/api-cups.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-cups.header 7279 2008-01-31 01:50:44Z mike $" CUPS API header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-cups.shtml b/cups/api-cups.shtml index bc9a05286..7a653d4a8 100644 --- a/cups/api-cups.shtml +++ b/cups/api-cups.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-cups.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-cups.shtml 7337 2008-02-22 04:44:04Z mike $" CUPS API introduction for the Common UNIX Printing System (CUPS). diff --git a/cups/api-filedir.header b/cups/api-filedir.header index 755311511..e4c7994f5 100644 --- a/cups/api-filedir.header +++ b/cups/api-filedir.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-filedir.header 7279 2008-01-31 01:50:44Z mike $" File and Directory API header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-filedir.shtml b/cups/api-filedir.shtml index 2b19efa8a..843812ce5 100644 --- a/cups/api-filedir.shtml +++ b/cups/api-filedir.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-filedir.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-filedir.shtml 7279 2008-01-31 01:50:44Z mike $" File and directory API introduction for the Common UNIX Printing System (CUPS). diff --git a/cups/api-filter.header b/cups/api-filter.header index 368364ae8..bfe1a73aa 100644 --- a/cups/api-filter.header +++ b/cups/api-filter.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-filter.header 7616 2008-05-28 00:34:13Z mike $" Filter and backend programming header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-filter.shtml b/cups/api-filter.shtml index 2be3b2bf6..90d86342d 100644 --- a/cups/api-filter.shtml +++ b/cups/api-filter.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-filter.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-filter.shtml 7677 2008-06-19 23:22:19Z mike $" Filter and backend programming introduction for the Common UNIX Printing System (CUPS). @@ -185,10 +185,11 @@ prefix strings:</p> <dt>ATTR: attribute=value [attribute=value]</dt> <dd>Sets the named printer or job attribute(s). Typically this is used to set the <code>marker-colors</code>, <code>marker-levels</code>, - <code>marker-names</code>, <code>marker-types</code>, - <code>printer-alert</code>, and <code>printer-alert-description</code> - printer attributes. Standard <code>marker-types</code> values are - listed in <a href='#TABLE1'>Table 1</a>.</dd> + <code>marker-message</code>, <code>marker-names</code>, + <code>marker-types</code>, <code>printer-alert</code>, and + <code>printer-alert-description</code> printer attributes. Standard + <code>marker-types</code> values are listed in <a href='#TABLE1'>Table + 1</a>.</dd> <dt>CRIT: message</dt> <dd>Sets the printer-state-message attribute and adds the specified diff --git a/cups/api-httpipp.header b/cups/api-httpipp.header index 03d5a8def..4bb1b3d57 100644 --- a/cups/api-httpipp.header +++ b/cups/api-httpipp.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-httpipp.header 7258 2008-01-28 00:15:05Z mike $" HTTP and IPP API header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-httpipp.shtml b/cups/api-httpipp.shtml index b755b7ded..ed559efaf 100644 --- a/cups/api-httpipp.shtml +++ b/cups/api-httpipp.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-httpipp.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-httpipp.shtml 7684 2008-06-23 16:47:38Z mike $" HTTP and IPP API introduction for the Common UNIX Printing System (CUPS). @@ -293,7 +293,7 @@ tempfd = cupsTempFd(tempfile, sizeof(tempfile)); /* Loop for authentication */ do { - status = a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/"); + status = <a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/"); if (status == HTTP_UNAUTHORIZED) { diff --git a/cups/api-ppd.header b/cups/api-ppd.header index 60f6ff0d2..8ec2f7593 100644 --- a/cups/api-ppd.header +++ b/cups/api-ppd.header @@ -1,5 +1,5 @@ <!-- - "$Id$" + "$Id: api-ppd.header 7616 2008-05-28 00:34:13Z mike $" PPD API header for the Common UNIX Printing System (CUPS). diff --git a/cups/api-ppd.shtml b/cups/api-ppd.shtml index c411c6844..ad393e106 100644 --- a/cups/api-ppd.shtml +++ b/cups/api-ppd.shtml @@ -1,5 +1,5 @@ <!-- - "$Id: api-ppd.shtml 6649 2007-07-11 21:46:42Z mike $" + "$Id: api-ppd.shtml 7616 2008-05-28 00:34:13Z mike $" PPD API introduction for the Common UNIX Printing System (CUPS). diff --git a/cups/array.c b/cups/array.c index 19f97819d..ae45eeba0 100644 --- a/cups/array.c +++ b/cups/array.c @@ -1,5 +1,5 @@ /* - * "$Id: array.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: array.c 7616 2008-05-28 00:34:13Z mike $" * * Sorted array routines for the Common UNIX Printing System (CUPS). * @@ -1142,5 +1142,5 @@ cups_array_find(cups_array_t *a, /* I - Array */ /* - * End of "$Id: array.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: array.c 7616 2008-05-28 00:34:13Z mike $". */ diff --git a/cups/array.h b/cups/array.h index ae5752195..029e2e996 100644 --- a/cups/array.h +++ b/cups/array.h @@ -1,5 +1,5 @@ /* - * "$Id: array.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: array.h 7266 2008-01-29 02:15:29Z mike $" * * Sorted array definitions for the Common UNIX Printing System (CUPS). * @@ -80,5 +80,5 @@ extern void *cupsArrayUserData(cups_array_t *a) _CUPS_API_1_2; #endif /* !_CUPS_ARRAY_H_ */ /* - * End of "$Id: array.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: array.h 7266 2008-01-29 02:15:29Z mike $". */ diff --git a/cups/auth.c b/cups/auth.c index d3d38b47e..561756215 100644 --- a/cups/auth.c +++ b/cups/auth.c @@ -1,5 +1,5 @@ /* - * "$Id: auth.c 6779 2007-08-08 19:49:48Z mike $" + * "$Id: auth.c 7460 2008-04-16 02:19:54Z mike $" * * Authentication functions for the Common UNIX Printing System (CUPS). * @@ -683,5 +683,5 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */ /* - * End of "$Id: auth.c 6779 2007-08-08 19:49:48Z mike $". + * End of "$Id: auth.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/backchannel.c b/cups/backchannel.c index 4eb1947ed..c2b53bb49 100644 --- a/cups/backchannel.c +++ b/cups/backchannel.c @@ -1,5 +1,5 @@ /* - * "$Id: backchannel.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: backchannel.c 7616 2008-05-28 00:34:13Z mike $" * * Backchannel functions for the Common UNIX Printing System (CUPS). * @@ -195,5 +195,5 @@ cups_setup(fd_set *set, /* I - Set for select() */ /* - * End of "$Id: backchannel.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: backchannel.c 7616 2008-05-28 00:34:13Z mike $". */ diff --git a/cups/backend.c b/cups/backend.c index db17bda70..477d38ecd 100644 --- a/cups/backend.c +++ b/cups/backend.c @@ -1,5 +1,5 @@ /* - * "$Id: backend.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: backend.c 7583 2008-05-16 17:47:16Z mike $" * * Backend functions for the Common UNIX Printing System (CUPS). * @@ -58,5 +58,5 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */ /* - * End of "$Id: backend.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: backend.c 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/cups/backend.h b/cups/backend.h index 67d5e8115..77bf57569 100644 --- a/cups/backend.h +++ b/cups/backend.h @@ -1,5 +1,5 @@ /* - * "$Id: backend.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: backend.h 7282 2008-01-31 08:37:11Z mike $" * * Backend definitions for the Common UNIX Printing System (CUPS). * @@ -53,5 +53,5 @@ extern const char *cupsBackendDeviceURI(char **argv) _CUPS_API_1_2; #endif /* !_CUPS_BACKEND_H_ */ /* - * End of "$Id: backend.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: backend.h 7282 2008-01-31 08:37:11Z mike $". */ diff --git a/cups/cups.h b/cups/cups.h index 6ef70f647..e80b1665a 100644 --- a/cups/cups.h +++ b/cups/cups.h @@ -1,5 +1,5 @@ /* - * "$Id: cups.h 6870 2007-08-27 21:13:35Z mike $" + * "$Id: cups.h 7616 2008-05-28 00:34:13Z mike $" * * API definitions for the Common UNIX Printing System (CUPS). * @@ -308,5 +308,5 @@ extern http_status_t cupsWriteRequestData(http_t *http, const char *buffer, #endif /* !_CUPS_CUPS_H_ */ /* - * End of "$Id: cups.h 6870 2007-08-27 21:13:35Z mike $". + * End of "$Id: cups.h 7616 2008-05-28 00:34:13Z mike $". */ diff --git a/cups/debug.h b/cups/debug.h index 756c4773d..8b91d9366 100644 --- a/cups/debug.h +++ b/cups/debug.h @@ -1,5 +1,5 @@ /* - * "$Id: debug.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: debug.h 7460 2008-04-16 02:19:54Z mike $" * * Debugging macros for the Common UNIX Printing System (CUPS). * @@ -53,5 +53,5 @@ extern void _cups_debug_puts(const char *s); #endif /* !_CUPS_DEBUG_H_ */ /* - * End of "$Id: debug.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: debug.h 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/dest.c b/cups/dest.c index a4c826413..185bd1a50 100644 --- a/cups/dest.c +++ b/cups/dest.c @@ -1,5 +1,5 @@ /* - * "$Id: dest.c 6943 2007-09-10 23:00:33Z mike $" + * "$Id: dest.c 7460 2008-04-16 02:19:54Z mike $" * * User-defined destination (and option) support for the Common UNIX * Printing System (CUPS). @@ -1831,5 +1831,5 @@ cups_get_sdests(http_t *http, /* I - Connection to server or CUPS_HTTP_DEFA /* - * End of "$Id: dest.c 6943 2007-09-10 23:00:33Z mike $". + * End of "$Id: dest.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/dir.c b/cups/dir.c index 1ef2046b7..b55cfc8c6 100644 --- a/cups/dir.c +++ b/cups/dir.c @@ -1,5 +1,5 @@ /* - * "$Id$" + * "$Id: dir.c 7279 2008-01-31 01:50:44Z mike $" * * Public directory routines for the Common UNIX Printing System (CUPS). * @@ -469,5 +469,5 @@ cupsDirRewind(cups_dir_t *dp) /* I - Directory pointer */ #endif /* WIN32 */ /* - * End of "$Id$". + * End of "$Id: dir.c 7279 2008-01-31 01:50:44Z mike $". */ diff --git a/cups/dir.h b/cups/dir.h index 5a4f8d6d0..85dd8076a 100644 --- a/cups/dir.h +++ b/cups/dir.h @@ -1,5 +1,5 @@ /* - * "$Id$" + * "$Id: dir.h 7026 2007-10-19 00:57:45Z mike $" * * Public directory definitions for the Common UNIX Printing System (CUPS). * @@ -65,5 +65,5 @@ extern void cupsDirRewind(cups_dir_t *dp) _CUPS_API_1_2; #endif /* !_CUPS_DIR_H_ */ /* - * End of "$Id$". + * End of "$Id: dir.h 7026 2007-10-19 00:57:45Z mike $". */ diff --git a/cups/emit.c b/cups/emit.c index 636f3e7fb..3e78be539 100644 --- a/cups/emit.c +++ b/cups/emit.c @@ -1,5 +1,5 @@ /* - * "$Id: emit.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: emit.c 7493 2008-04-24 00:10:34Z mike $" * * PPD code emission routines for the Common UNIX Printing System (CUPS). * @@ -1010,5 +1010,5 @@ ppd_handle_media(ppd_file_t *ppd) /* - * End of "$Id: emit.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: emit.c 7493 2008-04-24 00:10:34Z mike $". */ diff --git a/cups/encode.c b/cups/encode.c index 335623eae..f486d7d07 100644 --- a/cups/encode.c +++ b/cups/encode.c @@ -1,5 +1,5 @@ /* - * "$Id: encode.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: encode.c 7696 2008-06-26 00:54:42Z mike $" * * Option encoding routines for the Common UNIX Printing System (CUPS). * @@ -64,6 +64,7 @@ static const _ipp_option_t ipp_options[] = { 0, "gamma-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER }, { 0, "hue", IPP_TAG_INTEGER, IPP_TAG_JOB }, { 0, "hue-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER }, + { 0, "job-impressions", IPP_TAG_INTEGER, IPP_TAG_JOB }, { 0, "job-k-limit", IPP_TAG_INTEGER, IPP_TAG_JOB }, { 0, "job-page-limit", IPP_TAG_INTEGER, IPP_TAG_JOB }, { 0, "job-priority", IPP_TAG_INTEGER, IPP_TAG_JOB }, @@ -588,5 +589,5 @@ compare_ipp_options(_ipp_option_t *a, /* I - First option */ /* - * End of "$Id: encode.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: encode.c 7696 2008-06-26 00:54:42Z mike $". */ diff --git a/cups/file.c b/cups/file.c index d3726cf53..815e1d3c5 100644 --- a/cups/file.c +++ b/cups/file.c @@ -1,5 +1,5 @@ /* - * "$Id: file.c 6962 2007-09-17 20:35:47Z mike $" + * "$Id: file.c 7672 2008-06-18 22:03:02Z mike $" * * File functions for the Common UNIX Printing System (CUPS). * @@ -119,6 +119,9 @@ struct _cups_file_s /**** CUPS file structure... ****/ Bytef cbuf[4096]; /* (De)compression buffer */ uLong crc; /* (De)compression CRC */ #endif /* HAVE_LIBZ */ + + char *printf_buffer; /* cupsFilePrintf buffer */ + size_t printf_size; /* Size of cupsFilePrintf buffer */ }; @@ -242,6 +245,9 @@ cupsFileClose(cups_file_t *fp) /* I - CUPS file */ mode = fp->mode; is_stdio = fp->is_stdio; + if (fp->printf_buffer) + free(fp->printf_buffer); + free(fp); /* @@ -1111,7 +1117,6 @@ cupsFilePrintf(cups_file_t *fp, /* I - CUPS file */ { va_list ap; /* Argument list */ ssize_t bytes; /* Formatted size */ - char buf[8192]; /* Formatted text */ DEBUG_printf(("cupsFilePrintf(fp=%p, format=\"%s\", ...)\n", fp, format)); @@ -1119,16 +1124,48 @@ cupsFilePrintf(cups_file_t *fp, /* I - CUPS file */ if (!fp || !format || (fp->mode != 'w' && fp->mode != 's')) return (-1); + if (!fp->printf_buffer) + { + /* + * Start with an 1k printf buffer... + */ + + if ((fp->printf_buffer = malloc(1024)) == NULL) + return (-1); + + fp->printf_size = 1024; + } + va_start(ap, format); - bytes = vsnprintf(buf, sizeof(buf), format, ap); + bytes = vsnprintf(fp->printf_buffer, fp->printf_size, format, ap); va_end(ap); - if (bytes >= sizeof(buf)) - return (-1); + if (bytes >= fp->printf_size) + { + /* + * Expand the printf buffer... + */ + + char *temp; /* Temporary buffer pointer */ + + + if (bytes > 65535) + return (-1); + + if ((temp = realloc(fp->printf_buffer, bytes + 1)) == NULL) + return (-1); + + fp->printf_buffer = temp; + fp->printf_size = bytes + 1; + + va_start(ap, format); + bytes = vsnprintf(fp->printf_buffer, fp->printf_size, format, ap); + va_end(ap); + } if (fp->mode == 's') { - if (cups_write(fp, buf, bytes) < 0) + if (cups_write(fp, fp->printf_buffer, bytes) < 0) return (-1); fp->pos += bytes; @@ -1150,14 +1187,14 @@ cupsFilePrintf(cups_file_t *fp, /* I - CUPS file */ { #ifdef HAVE_LIBZ if (fp->compressed) - return (cups_compress(fp, buf, bytes)); + return (cups_compress(fp, fp->printf_buffer, bytes)); else #endif /* HAVE_LIBZ */ - return (cups_write(fp, buf, bytes)); + return (cups_write(fp, fp->printf_buffer, bytes)); } else { - memcpy(fp->ptr, buf, bytes); + memcpy(fp->ptr, fp->printf_buffer, bytes); fp->ptr += bytes; return (bytes); } @@ -2294,5 +2331,5 @@ cups_write(cups_file_t *fp, /* I - CUPS file */ /* - * End of "$Id: file.c 6962 2007-09-17 20:35:47Z mike $". + * End of "$Id: file.c 7672 2008-06-18 22:03:02Z mike $". */ diff --git a/cups/file.h b/cups/file.h index 05a32cc71..53356d68a 100644 --- a/cups/file.h +++ b/cups/file.h @@ -1,5 +1,5 @@ /* - * "$Id: file.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: file.h 7460 2008-04-16 02:19:54Z mike $" * * Public file definitions for the Common UNIX Printing System (CUPS). * @@ -105,5 +105,5 @@ extern ssize_t cupsFileWrite(cups_file_t *fp, const char *buf, size_t bytes) _C #endif /* !_CUPS_FILE_H_ */ /* - * End of "$Id: file.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: file.h 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/getputfile.c b/cups/getputfile.c index 6af7b56b1..31dde6ca7 100644 --- a/cups/getputfile.c +++ b/cups/getputfile.c @@ -1,5 +1,5 @@ /* - * "$Id: getputfile.c 6720 2007-07-25 00:40:03Z mike $" + * "$Id: getputfile.c 7359 2008-02-29 19:01:35Z mike $" * * Get/put file functions for the Common UNIX Printing System (CUPS). * @@ -494,5 +494,5 @@ cupsPutFile(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE /* - * End of "$Id: getputfile.c 6720 2007-07-25 00:40:03Z mike $". + * End of "$Id: getputfile.c 7359 2008-02-29 19:01:35Z mike $". */ diff --git a/cups/globals.c b/cups/globals.c index 6849f424c..d104f1b50 100644 --- a/cups/globals.c +++ b/cups/globals.c @@ -1,5 +1,5 @@ /* - * "$Id: globals.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: globals.c 7460 2008-04-16 02:19:54Z mike $" * * Global variable access routines for the Common UNIX Printing System (CUPS). * @@ -205,5 +205,5 @@ _cupsGlobals(void) /* - * End of "$Id: globals.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: globals.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/globals.h b/cups/globals.h index 2110dbcd2..1629ec35e 100644 --- a/cups/globals.h +++ b/cups/globals.h @@ -1,5 +1,5 @@ /* - * "$Id: globals.h 6712 2007-07-24 00:13:05Z mike $" + * "$Id: globals.h 7583 2008-05-16 17:47:16Z mike $" * * Global variable definitions for the Common UNIX Printing System (CUPS). * @@ -156,5 +156,5 @@ extern void _cupsSetHTTPError(http_status_t status); #endif /* !_CUPS_GLOBALS_H_ */ /* - * End of "$Id: globals.h 6712 2007-07-24 00:13:05Z mike $". + * End of "$Id: globals.h 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/cups/http-addrlist.c b/cups/http-addrlist.c index 6d645053c..effe2e6a8 100644 --- a/cups/http-addrlist.c +++ b/cups/http-addrlist.c @@ -1,5 +1,5 @@ /* - * "$Id: http-addrlist.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: http-addrlist.c 7460 2008-04-16 02:19:54Z mike $" * * HTTP address list routines for the Common UNIX Printing System (CUPS). * @@ -599,5 +599,5 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p /* - * End of "$Id: http-addrlist.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: http-addrlist.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/http-private.h b/cups/http-private.h index c933f45cf..415f25a9e 100644 --- a/cups/http-private.h +++ b/cups/http-private.h @@ -1,5 +1,5 @@ /* - * "$Id: http-private.h 6933 2007-09-10 16:45:59Z mike $" + * "$Id: http-private.h 7583 2008-05-16 17:47:16Z mike $" * * Private HTTP definitions for the Common UNIX Printing System (CUPS). * @@ -268,5 +268,5 @@ extern const char *_httpResolveURI(const char *uri, char *resolved_uri, #endif /* !_CUPS_HTTP_PRIVATE_H_ */ /* - * End of "$Id: http-private.h 6933 2007-09-10 16:45:59Z mike $". + * End of "$Id: http-private.h 7583 2008-05-16 17:47:16Z mike $". */ diff --git a/cups/http.c b/cups/http.c index b70139108..8baf29119 100644 --- a/cups/http.c +++ b/cups/http.c @@ -1,5 +1,5 @@ /* - * "$Id: http.c 6724 2007-07-25 20:39:33Z mike $" + * "$Id: http.c 7661 2008-06-16 21:46:51Z mike $" * * HTTP routines for the Common UNIX Printing System (CUPS). * @@ -3239,5 +3239,5 @@ http_write_ssl(http_t *http, /* I - Connection to server */ /* - * End of "$Id: http.c 6724 2007-07-25 20:39:33Z mike $". + * End of "$Id: http.c 7661 2008-06-16 21:46:51Z mike $". */ diff --git a/cups/http.h b/cups/http.h index 552bab98a..169a1575c 100644 --- a/cups/http.h +++ b/cups/http.h @@ -1,5 +1,5 @@ /* - * "$Id: http.h 6722 2007-07-25 17:19:09Z mike $" + * "$Id: http.h 7026 2007-10-19 00:57:45Z mike $" * * Hyper-Text Transport Protocol definitions for the Common UNIX Printing * System (CUPS). @@ -447,5 +447,5 @@ extern void httpSetAuthString(http_t *http, const char *scheme, #endif /* !_CUPS_HTTP_H_ */ /* - * End of "$Id: http.h 6722 2007-07-25 17:19:09Z mike $". + * End of "$Id: http.h 7026 2007-10-19 00:57:45Z mike $". */ diff --git a/cups/i18n.h b/cups/i18n.h index 71eb9f64d..2329de8ee 100644 --- a/cups/i18n.h +++ b/cups/i18n.h @@ -1,5 +1,5 @@ /* - * "$Id: i18n.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: i18n.h 7363 2008-03-03 22:19:24Z mike $" * * (Private) localization support for the Common UNIX Printing System (CUPS). * @@ -111,5 +111,5 @@ extern void _cupsSetLocale(char *argv[]); #endif /* !_CUPS_I18N_H_ */ /* - * End of "$Id: i18n.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: i18n.h 7363 2008-03-03 22:19:24Z mike $". */ diff --git a/cups/ipp-private.h b/cups/ipp-private.h index 0083d2a38..2d1fd955f 100644 --- a/cups/ipp-private.h +++ b/cups/ipp-private.h @@ -1,5 +1,5 @@ /* - * "$Id: ipp-private.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $" * * Private IPP definitions for the Common UNIX Printing System (CUPS). * @@ -66,5 +66,5 @@ extern void _ippFreeAttr(ipp_attribute_t *); #endif /* !_CUPS_IPP_H_ */ /* - * End of "$Id: ipp-private.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $". */ diff --git a/cups/ipp-support.c b/cups/ipp-support.c index 945dc4f63..47194d133 100644 --- a/cups/ipp-support.c +++ b/cups/ipp-support.c @@ -1,5 +1,5 @@ /* - * "$Id: ipp-support.c 6879 2007-08-29 20:26:50Z mike $" + * "$Id: ipp-support.c 7460 2008-04-16 02:19:54Z mike $" * * Internet Printing Protocol support functions for the Common UNIX * Printing System (CUPS). @@ -371,5 +371,5 @@ ippSetPort(int p) /* I - Port number to use */ /* - * End of "$Id: ipp-support.c 6879 2007-08-29 20:26:50Z mike $". + * End of "$Id: ipp-support.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/ipp.c b/cups/ipp.c index 0749ec2a1..d528b6a54 100644 --- a/cups/ipp.c +++ b/cups/ipp.c @@ -1,5 +1,5 @@ /* - * "$Id: ipp.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: ipp.c 7463 2008-04-17 00:24:25Z mike $" * * Internet Printing Protocol support functions for the Common UNIX * Printing System (CUPS). @@ -2908,5 +2908,5 @@ _ipp_free_attr(ipp_attribute_t *attr) /* I - Attribute to free */ /* - * End of "$Id: ipp.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: ipp.c 7463 2008-04-17 00:24:25Z mike $". */ diff --git a/cups/ipp.h b/cups/ipp.h index 2a36fe35b..9073c5775 100644 --- a/cups/ipp.h +++ b/cups/ipp.h @@ -1,5 +1,5 @@ /* - * "$Id: ipp.h 6879 2007-08-29 20:26:50Z mike $" + * "$Id: ipp.h 7257 2008-01-25 02:42:47Z mike $" * * Internet Printing Protocol definitions for the Common UNIX Printing * System (CUPS). @@ -494,5 +494,5 @@ extern ipp_state_t ippWriteIO(void *dst, ipp_iocb_t cb, int blocking, #endif /* !_CUPS_IPP_H_ */ /* - * End of "$Id: ipp.h 6879 2007-08-29 20:26:50Z mike $". + * End of "$Id: ipp.h 7257 2008-01-25 02:42:47Z mike $". */ diff --git a/cups/langprintf.c b/cups/langprintf.c index afb189c57..089eb4859 100644 --- a/cups/langprintf.c +++ b/cups/langprintf.c @@ -1,5 +1,5 @@ /* - * "$Id: langprintf.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: langprintf.c 7193 2008-01-07 23:01:40Z mike $" * * Localized printf/puts functions for the Common UNIX Printing * System (CUPS). @@ -272,5 +272,5 @@ _cupsSetLocale(char *argv[]) /* IO - Command-line arguments */ /* - * End of "$Id: langprintf.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: langprintf.c 7193 2008-01-07 23:01:40Z mike $". */ diff --git a/cups/language.c b/cups/language.c index 2949b3507..5f2083108 100644 --- a/cups/language.c +++ b/cups/language.c @@ -1,5 +1,5 @@ /* - * "$Id: language.c 6916 2007-09-05 21:14:08Z mike $" + * "$Id: language.c 7558 2008-05-12 23:46:44Z mike $" * * I18N/language support for the Common UNIX Printing System (CUPS). * @@ -1320,5 +1320,5 @@ cups_unquote(char *d, /* O - Unquoted string */ /* - * End of "$Id: language.c 6916 2007-09-05 21:14:08Z mike $". + * End of "$Id: language.c 7558 2008-05-12 23:46:44Z mike $". */ diff --git a/cups/libcups.exp b/cups/libcups.exp index ff0dd0542..20c66feff 100644 --- a/cups/libcups.exp +++ b/cups/libcups.exp @@ -319,6 +319,7 @@ _ppdFirstOption _ppdIsMarked _ppdLastError _ppdLocalize +_ppdLocalizeAttr _ppdLocalizeIPPReason _ppdLocalizeMarkerName _ppdMarkDefaults diff --git a/cups/localize.c b/cups/localize.c index 551dde98e..7a98607de 100644 --- a/cups/localize.c +++ b/cups/localize.c @@ -1,5 +1,5 @@ /* - * "$Id: localize.c 7363 2008-03-03 22:19:24Z mike $" + * "$Id: localize.c 7679 2008-06-19 23:37:45Z mike $" * * PPD localization routines for the Common UNIX Printing System (CUPS). * @@ -26,6 +26,7 @@ * Contents: * * ppdLocalize() - Localize the PPD file to the current locale. + * ppdLocalizeAttr() - Localize an attribute. * ppdLocalizeIPPReason() - Get the localized version of a cupsIPPReason * attribute. * ppdLocalizeMarkerName() - Get the localized version of a marker-names @@ -196,6 +197,45 @@ ppdLocalize(ppd_file_t *ppd) /* I - PPD file */ /* + * 'ppdLocalizeAttr()' - Localize an attribute. + * + * This function uses the current locale to find the localized attribute for + * the given main and option keywords. If no localized version of the + * attribute exists for the current locale, the unlocalized version is returned. + */ + +ppd_attr_t * /* O - Localized attribute or @code NULL@ if none exists */ +ppdLocalizeAttr(ppd_file_t *ppd, /* I - PPD file */ + const char *keyword, /* I - Main keyword */ + const char *spec) /* I - Option keyword or @code NULL@ for none */ +{ + ppd_attr_t *locattr; /* Localized attribute */ + char ll_CC[6]; /* Language + country locale */ + + + /* + * Get the default language... + */ + + ppd_ll_CC(ll_CC, sizeof(ll_CC)); + + /* + * Find the localized attribute... + */ + + if (spec) + locattr = _ppdLocalizedAttr(ppd, keyword, spec, ll_CC); + else + locattr = _ppdLocalizedAttr(ppd, "Translation", keyword, ll_CC); + + if (!locattr) + locattr = ppdFindAttr(ppd, keyword, spec); + + return (locattr); +} + + +/* * 'ppdLocalizeIPPReason()' - Get the localized version of a cupsIPPReason * attribute. * @@ -666,5 +706,5 @@ ppd_ll_CC(char *ll_CC, /* O - Country-specific locale name */ /* - * End of "$Id: localize.c 7363 2008-03-03 22:19:24Z mike $". + * End of "$Id: localize.c 7679 2008-06-19 23:37:45Z mike $". */ diff --git a/cups/mark.c b/cups/mark.c index 7b018e609..91de0951c 100644 --- a/cups/mark.c +++ b/cups/mark.c @@ -1,5 +1,5 @@ /* - * "$Id: mark.c 7278 2008-01-31 01:23:09Z mike $" + * "$Id: mark.c 7605 2008-05-21 00:36:25Z mike $" * * Option marking routines for the Common UNIX Printing System (CUPS). * @@ -1136,5 +1136,5 @@ ppd_mark_choices(ppd_file_t *ppd, /* I - PPD file */ /* - * End of "$Id: mark.c 7278 2008-01-31 01:23:09Z mike $". + * End of "$Id: mark.c 7605 2008-05-21 00:36:25Z mike $". */ diff --git a/cups/notify.c b/cups/notify.c index 03a382e6d..cbfe5f070 100644 --- a/cups/notify.c +++ b/cups/notify.c @@ -1,5 +1,5 @@ /* - * "$Id: notify.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: notify.c 7337 2008-02-22 04:44:04Z mike $" * * Notification routines for the Common UNIX Printing System (CUPS). * @@ -198,5 +198,5 @@ cupsNotifyText(cups_lang_t *lang, /* I - Language data */ /* - * End of "$Id: notify.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: notify.c 7337 2008-02-22 04:44:04Z mike $". */ diff --git a/cups/options.c b/cups/options.c index 3e4db23be..f1f36df26 100644 --- a/cups/options.c +++ b/cups/options.c @@ -1,5 +1,5 @@ /* - * "$Id: options.c 7278 2008-01-31 01:23:09Z mike $" + * "$Id: options.c 7589 2008-05-19 00:13:23Z mike $" * * Option routines for the Common UNIX Printing System (CUPS). * @@ -448,5 +448,5 @@ cupsRemoveOption( /* - * End of "$Id: options.c 7278 2008-01-31 01:23:09Z mike $". + * End of "$Id: options.c 7589 2008-05-19 00:13:23Z mike $". */ diff --git a/cups/ppd.c b/cups/ppd.c index 91de6a9b4..cbe20558f 100644 --- a/cups/ppd.c +++ b/cups/ppd.c @@ -1,5 +1,5 @@ /* - * "$Id: ppd.c 6937 2007-09-10 21:13:31Z mike $" + * "$Id: ppd.c 7552 2008-05-12 17:42:15Z mike $" * * PPD file routines for the Common UNIX Printing System (CUPS). * @@ -3169,5 +3169,5 @@ ppd_read(cups_file_t *fp, /* I - File to read from */ /* - * End of "$Id: ppd.c 6937 2007-09-10 21:13:31Z mike $". + * End of "$Id: ppd.c 7552 2008-05-12 17:42:15Z mike $". */ diff --git a/cups/ppd.h b/cups/ppd.h index c99981793..8396e61e4 100644 --- a/cups/ppd.h +++ b/cups/ppd.h @@ -1,5 +1,5 @@ /* - * "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: ppd.h 7679 2008-06-19 23:37:45Z mike $" * * PostScript Printer Description definitions for the Common UNIX Printing * System (CUPS). @@ -399,6 +399,8 @@ extern const char *ppdLocalizeIPPReason(ppd_file_t *ppd, size_t bufsize) _CUPS_API_1_3; /**** New in CUPS 1.4 ****/ +extern ppd_attr_t *ppdLocalizeAttr(ppd_file_t *ppd, const char *keyword, + const char *spec); extern const char *ppdLocalizeMarkerName(ppd_file_t *ppd, const char *name) _CUPS_API_1_4; @@ -413,5 +415,5 @@ extern const char *ppdLocalizeMarkerName(ppd_file_t *ppd, #endif /* !_CUPS_PPD_H_ */ /* - * End of "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: ppd.h 7679 2008-06-19 23:37:45Z mike $". */ diff --git a/cups/request.c b/cups/request.c index e3465def0..36b02b912 100644 --- a/cups/request.c +++ b/cups/request.c @@ -1,5 +1,5 @@ /* - * "$Id: request.c 6879 2007-08-29 20:26:50Z mike $" + * "$Id: request.c 7460 2008-04-16 02:19:54Z mike $" * * IPP utilities for the Common UNIX Printing System (CUPS). * @@ -824,5 +824,5 @@ _cupsSetHTTPError(http_status_t status) /* I - HTTP status code */ /* - * End of "$Id: request.c 6879 2007-08-29 20:26:50Z mike $". + * End of "$Id: request.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/sidechannel.c b/cups/sidechannel.c index 9a009e969..bbb8dab02 100644 --- a/cups/sidechannel.c +++ b/cups/sidechannel.c @@ -1,5 +1,5 @@ /* - * "$Id: sidechannel.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: sidechannel.c 7594 2008-05-19 23:16:03Z mike $" * * Side-channel API code for the Common UNIX Printing System (CUPS). * @@ -552,5 +552,5 @@ cupsSideChannelWrite( /* - * End of "$Id: sidechannel.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: sidechannel.c 7594 2008-05-19 23:16:03Z mike $". */ diff --git a/cups/sidechannel.h b/cups/sidechannel.h index 3a8692c1c..f69259ebe 100644 --- a/cups/sidechannel.h +++ b/cups/sidechannel.h @@ -1,5 +1,5 @@ /* - * "$Id: sidechannel.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: sidechannel.h 7616 2008-05-28 00:34:13Z mike $" * * Side-channel API definitions for the Common UNIX Printing System (CUPS). * @@ -131,5 +131,5 @@ extern cups_sc_status_t cupsSideChannelSNMPWalk(const char *oid, double timeout, #endif /* !_CUPS_SIDECHANNEL_H_ */ /* - * End of "$Id: sidechannel.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: sidechannel.h 7616 2008-05-28 00:34:13Z mike $". */ diff --git a/cups/string.c b/cups/string.c index c3ec0ef6b..bd7d9cc16 100644 --- a/cups/string.c +++ b/cups/string.c @@ -1,5 +1,5 @@ /* - * "$Id: string.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: string.c 7460 2008-04-16 02:19:54Z mike $" * * String functions for the Common UNIX Printing System (CUPS). * @@ -734,5 +734,5 @@ compare_sp_items(_cups_sp_item_t *a, /* I - First item */ /* - * End of "$Id: string.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: string.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/cups/tempfile.c b/cups/tempfile.c index f25886461..6dea52b10 100644 --- a/cups/tempfile.c +++ b/cups/tempfile.c @@ -1,5 +1,5 @@ /* - * "$Id: tempfile.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: tempfile.c 7337 2008-02-22 04:44:04Z mike $" * * Temp file utilities for the Common UNIX Printing System (CUPS). * @@ -231,5 +231,5 @@ cupsTempFile2(char *filename, /* I - Pointer to buffer */ /* - * End of "$Id: tempfile.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: tempfile.c 7337 2008-02-22 04:44:04Z mike $". */ diff --git a/cups/test.ppd b/cups/test.ppd index 1b58a5231..14d631283 100644 --- a/cups/test.ppd +++ b/cups/test.ppd @@ -1,6 +1,6 @@ *PPD-Adobe: "4.3" *% -*% "$Id: test.ppd 6795 2007-08-15 18:02:26Z mike $" +*% "$Id: test.ppd 7582 2008-05-16 03:13:18Z mike $" *% *% Test PPD file for the Common UNIX Printing System (CUPS). *% @@ -206,5 +206,5 @@ help:anchor='foo'%20bookID=Vendor%20Help *Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM *Font ZapfDingbats: Special "(001.004S)" Standard ROM *% -*% End of "$Id: test.ppd 6795 2007-08-15 18:02:26Z mike $". +*% End of "$Id: test.ppd 7582 2008-05-16 03:13:18Z mike $". *% diff --git a/cups/testfile.c b/cups/testfile.c index 2140765c9..117b3c9e5 100644 --- a/cups/testfile.c +++ b/cups/testfile.c @@ -1,5 +1,5 @@ /* - * "$Id: testfile.c 6962 2007-09-17 20:35:47Z mike $" + * "$Id: testfile.c 7560 2008-05-13 06:34:04Z mike $" * * File test program for the Common UNIX Printing System (CUPS). * @@ -815,5 +815,5 @@ read_write_tests(int compression) /* I - Use compression? */ /* - * End of "$Id: testfile.c 6962 2007-09-17 20:35:47Z mike $". + * End of "$Id: testfile.c 7560 2008-05-13 06:34:04Z mike $". */ diff --git a/cups/testhttp.c b/cups/testhttp.c index fa9282f4a..b445bf9d6 100644 --- a/cups/testhttp.c +++ b/cups/testhttp.c @@ -1,5 +1,5 @@ /* - * "$Id: testhttp.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testhttp.c 7685 2008-06-23 16:49:18Z mike $" * * HTTP test program for the Common UNIX Printing System (CUPS). * @@ -301,7 +301,7 @@ main(int argc, /* I - Number of command-line arguments */ * httpAddrGetList() */ - fputs("httpAddrGetList(): ", stdout); + printf("httpAddrGetList(%s): ", hostname); addrlist = httpAddrGetList(hostname, AF_UNSPEC, NULL); if (addrlist) @@ -526,5 +526,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: testhttp.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: testhttp.c 7685 2008-06-23 16:49:18Z mike $". */ diff --git a/cups/testi18n.c b/cups/testi18n.c index c6654d62e..b18b64668 100644 --- a/cups/testi18n.c +++ b/cups/testi18n.c @@ -1,5 +1,5 @@ /* - * "$Id: testi18n.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testi18n.c 7560 2008-05-13 06:34:04Z mike $" * * Internationalization test for Common UNIX Printing System (CUPS). * @@ -548,5 +548,5 @@ print_utf8(const char *msg, /* I - Message String */ /* - * End of "$Id: testi18n.c 6649 2007-07-11 21:46:42Z mike $" + * End of "$Id: testi18n.c 7560 2008-05-13 06:34:04Z mike $" */ diff --git a/cups/testppd.c b/cups/testppd.c index 6772970b8..3c8a8dc6b 100644 --- a/cups/testppd.c +++ b/cups/testppd.c @@ -1,5 +1,5 @@ /* - * "$Id: testppd.c 6936 2007-09-10 18:15:36Z mike $" + * "$Id: testppd.c 7633 2008-06-10 23:07:29Z mike $" * * PPD test program for the Common UNIX Printing System (CUPS). * @@ -468,5 +468,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: testppd.c 6936 2007-09-10 18:15:36Z mike $". + * End of "$Id: testppd.c 7633 2008-06-10 23:07:29Z mike $". */ diff --git a/cups/transcode.c b/cups/transcode.c index 7a79b2a55..b0f895cd6 100644 --- a/cups/transcode.c +++ b/cups/transcode.c @@ -1,5 +1,5 @@ /* - * "$Id: transcode.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: transcode.c 7560 2008-05-13 06:34:04Z mike $" * * Transcoding support for the Common UNIX Printing System (CUPS). * @@ -1820,5 +1820,5 @@ get_vbcs_charmap( /* - * End of "$Id: transcode.c 6649 2007-07-11 21:46:42Z mike $" + * End of "$Id: transcode.c 7560 2008-05-13 06:34:04Z mike $" */ diff --git a/cups/transcode.h b/cups/transcode.h index 8c8cd5005..0a4dac131 100644 --- a/cups/transcode.h +++ b/cups/transcode.h @@ -1,5 +1,5 @@ /* - * "$Id: transcode.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: transcode.h 7026 2007-10-19 00:57:45Z mike $" * * Transcoding definitions for the Common UNIX Printing System (CUPS). * @@ -77,5 +77,5 @@ extern int cupsUTF32ToUTF8(cups_utf8_t *dest, /* - * End of "$Id: transcode.h 6649 2007-07-11 21:46:42Z mike $" + * End of "$Id: transcode.h 7026 2007-10-19 00:57:45Z mike $" */ diff --git a/cups/usersys.c b/cups/usersys.c index 28b40d0be..8e4be9559 100644 --- a/cups/usersys.c +++ b/cups/usersys.c @@ -1,5 +1,5 @@ /* - * "$Id: usersys.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: usersys.c 7337 2008-02-22 04:44:04Z mike $" * * User, system, and password routines for the Common UNIX Printing * System (CUPS). @@ -503,5 +503,5 @@ cups_open_client_conf(void) /* - * End of "$Id: usersys.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: usersys.c 7337 2008-02-22 04:44:04Z mike $". */ diff --git a/cups/util.c b/cups/util.c index a07276786..605cd89e8 100644 --- a/cups/util.c +++ b/cups/util.c @@ -1,5 +1,5 @@ /* - * "$Id: util.c 7014 2007-10-10 21:57:43Z mike $" + * "$Id: util.c 7634 2008-06-10 23:22:28Z mike $" * * Printing utilities for the Common UNIX Printing System (CUPS). * @@ -1802,5 +1802,5 @@ cups_get_printer_uri( /* - * End of "$Id: util.c 7014 2007-10-10 21:57:43Z mike $". + * End of "$Id: util.c 7634 2008-06-10 23:22:28Z mike $". */ diff --git a/data/Makefile b/data/Makefile index 3722a172a..48dd1db55 100644 --- a/data/Makefile +++ b/data/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 7014 2007-10-10 21:57:43Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Datafile makefile for the Common UNIX Printing System (CUPS). # @@ -201,5 +201,5 @@ uninstall: # -# End of "$Id: Makefile 7014 2007-10-10 21:57:43Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/data/testprint.ps b/data/testprint.ps index 72f5da9ee..7b1ed89c8 100644 --- a/data/testprint.ps +++ b/data/testprint.ps @@ -593,6 +593,6 @@ gsave grestore showpage % -% End of "$Id: testprint.ps 6649 2007-07-11 21:46:42Z mike $". +% End of "$Id: testprint.ps 7157 2008-01-02 21:22:42Z mike $". % %%EOF diff --git a/doc/Makefile b/doc/Makefile index e87eb5c34..9d24b2844 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6900 2007-08-30 17:17:51Z mike $" +# "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $" # # Documentation makefile for the Common UNIX Printing System (CUPS). # diff --git a/doc/help/api-array.html b/doc/help/api-array.html index f08a706a7..007d71278 100644 --- a/doc/help/api-array.html +++ b/doc/help/api-array.html @@ -323,7 +323,7 @@ div.contents ul.subcontents li { </ul></li> </ul> <!-- - "$Id: api-array.shtml 7266 2008-01-29 02:15:29Z mike $" + "$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $" Array API introduction for the Common UNIX Printing System (CUPS). diff --git a/doc/help/api-filter.html b/doc/help/api-filter.html index b645ec353..affeeb4e3 100644 --- a/doc/help/api-filter.html +++ b/doc/help/api-filter.html @@ -253,7 +253,7 @@ div.contents ul.subcontents li { <body> <div class='body'> <!-- - "$Id: api-filter.header 7615 2008-05-25 07:17:07Z mike $" + "$Id: api-filter.header 7616 2008-05-28 00:34:13Z mike $" Filter and backend programming header for the Common UNIX Printing System (CUPS). @@ -333,7 +333,7 @@ div.contents ul.subcontents li { </ul></li> </ul> <!-- - "$Id: api-filter.shtml 7594 2008-05-19 23:16:03Z mike $" + "$Id: api-filter.shtml 7677 2008-06-19 23:22:19Z mike $" Filter and backend programming introduction for the Common UNIX Printing System (CUPS). @@ -519,10 +519,11 @@ prefix strings:</p> <dt>ATTR: attribute=value [attribute=value]</dt> <dd>Sets the named printer or job attribute(s). Typically this is used to set the <code>marker-colors</code>, <code>marker-levels</code>, - <code>marker-names</code>, <code>marker-types</code>, - <code>printer-alert</code>, and <code>printer-alert-description</code> - printer attributes. Standard <code>marker-types</code> values are - listed in <a href='#TABLE1'>Table 1</a>.</dd> + <code>marker-message</code>, <code>marker-names</code>, + <code>marker-types</code>, <code>printer-alert</code>, and + <code>printer-alert-description</code> printer attributes. Standard + <code>marker-types</code> values are listed in <a href='#TABLE1'>Table + 1</a>.</dd> <dt>CRIT: message</dt> <dd>Sets the printer-state-message attribute and adds the specified diff --git a/doc/help/api-httpipp.html b/doc/help/api-httpipp.html index f2e4fa211..e55c460b4 100644 --- a/doc/help/api-httpipp.html +++ b/doc/help/api-httpipp.html @@ -792,7 +792,7 @@ tempfd = cupsTempFd(tempfile, sizeof(tempfile)); /* Loop for authentication */ do { - status = a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/"); + status = <a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/"); if (status == HTTP_UNAUTHORIZED) { diff --git a/doc/help/api-ppd.html b/doc/help/api-ppd.html index 697573e85..b8ea92154 100644 --- a/doc/help/api-ppd.html +++ b/doc/help/api-ppd.html @@ -253,7 +253,7 @@ div.contents ul.subcontents li { <body> <div class='body'> <!-- - "$Id: api-ppd.header 7278 2008-01-31 01:23:09Z mike $" + "$Id: api-ppd.header 7616 2008-05-28 00:34:13Z mike $" PPD API header for the Common UNIX Printing System (CUPS). @@ -326,6 +326,7 @@ marked option choices.">ppdConflicts</a></li> <li><a href="#ppdIsMarked" title="Check to see if an option is marked.">ppdIsMarked</a></li> <li><a href="#ppdLastError" title="Return the status from the last ppdOpen*().">ppdLastError</a></li> <li><a href="#ppdLocalize" title="Localize the PPD file to the current locale.">ppdLocalize</a></li> +<li><a href="#ppdLocalizeAttr" title="Localize an attribute.">ppdLocalizeAttr</a></li> <li><a href="#ppdLocalizeIPPReason" title="Get the localized version of a cupsIPPReason attribute.">ppdLocalizeIPPReason</a></li> <li><a href="#ppdLocalizeMarkerName" title="Get the localized version of a marker-names @@ -391,7 +392,7 @@ attribute value.">ppdLocalizeMarkerName</a></li> </ul></li> </ul> <!-- - "$Id: api-ppd.shtml 7278 2008-01-31 01:23:09Z mike $" + "$Id: api-ppd.shtml 7616 2008-05-28 00:34:13Z mike $" PPD API introduction for the Common UNIX Printing System (CUPS). @@ -1061,6 +1062,29 @@ descriptions, printer presets, and custom option parameters. Each localized string uses the UTF-8 character encoding. </p> +<h3 class="function"><a name="ppdLocalizeAttr">ppdLocalizeAttr</a></h3> +<p class="description">Localize an attribute.</p> +<p class="code"> +<a href="#ppd_attr_t">ppd_attr_t</a> *ppdLocalizeAttr (<br> + <a href="#ppd_file_t">ppd_file_t</a> *ppd,<br> + const char *keyword,<br> + const char *spec<br> +);</p> +<h4 class="parameters">Parameters</h4> +<dl> +<dt>ppd</dt> +<dd class="description">PPD file</dd> +<dt>keyword</dt> +<dd class="description">Main keyword</dd> +<dt>spec</dt> +<dd class="description">Option keyword or <code>NULL</code> for none</dd> +</dl> +<h4 class="returnvalue">Return Value</h4> +<p class="description">Localized attribute or <code>NULL</code> if none exists</p> +<h4 class="discussion">Discussion</h4> +<p class="discussion">This function uses the current locale to find the localized attribute for +the given main and option keywords. If no localized version of the +attribute exists for the current locale, the unlocalized version is returned.</p> <h3 class="function"><span class="info"> CUPS 1.3 </span><a name="ppdLocalizeIPPReason">ppdLocalizeIPPReason</a></h3> <p class="description">Get the localized version of a cupsIPPReason attribute.</p> diff --git a/doc/help/api-raster.html b/doc/help/api-raster.html index da9684b01..2672ec9db 100644 --- a/doc/help/api-raster.html +++ b/doc/help/api-raster.html @@ -501,8 +501,8 @@ the memory used to read the raster file:</p> <ul class="code"> <li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li> - <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a></li> - <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li> + <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li> + <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li> <li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li> </ul> diff --git a/doc/help/spec-ipp.html b/doc/help/spec-ipp.html index 344ba67af..a1c85a825 100644 --- a/doc/help/spec-ipp.html +++ b/doc/help/spec-ipp.html @@ -2473,8 +2473,8 @@ There will always be at least one banner file available called "none". <h4><a name="marker-change-time">marker-change-time (integer)</a></h4> <p>The marker-change-time attribute specifies the printer-up-time value when -the last change to the marker-colors, marker-levels, marker-names, or -marker-types attributes was made.</p> +the last change to the marker-colors, marker-levels, marker-message, +marker-names, or marker-types attributes was made.</p> <h4><a name="marker-colors">marker-colors (1setof name(MAX))</a></h4> @@ -2490,6 +2490,12 @@ printer. It is only available when the driver provides supply levels. A value of -1 indicates the level is unknown, while values from 0 to 100 indicate the corresponding percentage.</p> +<h4><a name="marker-message">marker-message (text(MAX))</a></h4> + +<p>The marker-message attribute provides a human-readable status message +for the current supply levels, e.g. "12 pages of ink remaining." It is only +available when the driver provides supply levels.</p> + <h4><a name="marker-names">marker-names (1setof name(MAX))</a></h4> <p>The marker-names attribute specifies the name(s) for each supply in the diff --git a/doc/help/spec-ppd.html b/doc/help/spec-ppd.html index 402b3bcdd..87209f39a 100644 --- a/doc/help/spec-ppd.html +++ b/doc/help/spec-ppd.html @@ -8,7 +8,7 @@ </head> <body> <!-- - "$Id: spec-ppd.html 6993 2007-09-28 18:05:28Z mike $" + "$Id: spec-ppd.html 7677 2008-06-19 23:22:19Z mike $" CUPS PPD extensions specification for the Common UNIX Printing System (CUPS). @@ -1254,6 +1254,20 @@ generated by the driver to human readable text.</p> *cupsMarkerName cyanToner/Cyan Toner: "" </pre> +<h3><span class='info'>CUPS 1.4</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3> + +<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p> + +<p>This optional attribute provides disclaimer text for the supply level +information provided by the driver, typically something like "supply levels +are approximate".</p> + +<p>Examples:</p> + +<pre class='command'> +*cupsMarkerNotice: "Supply levels are approximate." +</pre> + <h3><a name='cupsModelNumber'>cupsModelNumber</a></h3> <p class='summary'>*cupsModelNumber: number</p> @@ -1627,11 +1641,13 @@ the device.</p> <ul> - <li>Added <tt>cupsPJLDisplay</tt> attribute.</li> + <li>Added <tt>cupsCommands</tt> attribute.</li> <li>Added <tt>cupsMarkerName</tt> attribute.</li> - <li>Added <tt>cupsCommands</tt> attribute.</li> + <li>Added <tt>cupsMarkerNotice</tt> attribute.</li> + + <li>Added <tt>cupsPJLDisplay</tt> attribute.</li> </ul> diff --git a/driver/api-driver.header b/driver/api-driver.header new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/driver/api-driver.header diff --git a/driver/api-driver.shtml b/driver/api-driver.shtml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/driver/api-driver.shtml diff --git a/driver/testdriver.c b/driver/testdriver.c index 0d1f299eb..f2159c3c1 100644 --- a/driver/testdriver.c +++ b/driver/testdriver.c @@ -1,5 +1,5 @@ /* - * "$Id: testdriver.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testdriver.c 7306 2008-02-15 00:52:38Z mike $" * * Sample/test driver interface program for the Common UNIX Printing * System (CUPS). @@ -174,5 +174,5 @@ list_ppds(const char *name) /* I - Program name */ /* - * End of "$Id: testdriver.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: testdriver.c 7306 2008-02-15 00:52:38Z mike $". */ diff --git a/filter/Makefile b/filter/Makefile index 61d578ce7..3bb3981bb 100644 --- a/filter/Makefile +++ b/filter/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6696 2007-07-19 23:27:49Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Filter makefile for the Common UNIX Printing System (CUPS). # @@ -461,5 +461,5 @@ include Dependencies # -# End of "$Id: Makefile 6696 2007-07-19 23:27:49Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/filter/api-raster.shtml b/filter/api-raster.shtml index 847b974bb..880042b07 100644 --- a/filter/api-raster.shtml +++ b/filter/api-raster.shtml @@ -153,8 +153,8 @@ the memory used to read the raster file:</p> <ul class="code"> <li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li> - <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a></li> - <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li> + <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li> + <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li> <li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li> </ul> diff --git a/filter/commandtops.c b/filter/commandtops.c index ea7caf10d..ecde9916a 100644 --- a/filter/commandtops.c +++ b/filter/commandtops.c @@ -14,6 +14,11 @@ * * Contents: * + * main() - Process a CUPS command file. + * auto_configure() - Automatically configure the printer using + * PostScript query commands and/or SNMP lookups. + * print_self_test_page() - Print a self-test page. + * report_levels() - Report supply levels. */ /* @@ -309,7 +314,13 @@ report_levels(ppd_file_t *ppd, /* I - PPD file */ fputs(ppd->jcl_ps, stdout); } + /* + * Send a query job that just reports the product string - network backends + * will gather the supply levels via SNMP. + */ + puts("%!"); + puts("product ="); /* * Finish the job... diff --git a/filter/error.c b/filter/error.c index 44c2eabfb..713c024a0 100644 --- a/filter/error.c +++ b/filter/error.c @@ -1,5 +1,5 @@ /* - * "$Id: error.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: error.c 7460 2008-04-16 02:19:54Z mike $" * * Raster error handling for the Common UNIX Printing System (CUPS). * @@ -283,5 +283,5 @@ get_error_buffer(void) /* - * End of "$Id: error.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: error.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/filter/hpgl-input.c b/filter/hpgl-input.c index d9af61a3c..fdc45555e 100644 --- a/filter/hpgl-input.c +++ b/filter/hpgl-input.c @@ -1,5 +1,5 @@ /* - * "$Id: hpgl-input.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: hpgl-input.c 7219 2008-01-14 22:00:02Z mike $" * * HP-GL/2 input processing for the Common UNIX Printing System (CUPS). * @@ -268,5 +268,5 @@ FreeParameters(int num_params, /* I - Number of parameters */ /* - * End of "$Id: hpgl-input.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: hpgl-input.c 7219 2008-01-14 22:00:02Z mike $". */ diff --git a/filter/image-bmp.c b/filter/image-bmp.c index 1056252a7..21521600f 100644 --- a/filter/image-bmp.c +++ b/filter/image-bmp.c @@ -1,5 +1,5 @@ /* - * "$Id: image-bmp.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-bmp.c 7221 2008-01-16 22:20:08Z mike $" * * BMP image routines for the Common UNIX Printing System (CUPS). * @@ -539,5 +539,5 @@ read_long(FILE *fp) /* I - File to read from */ /* - * End of "$Id: image-bmp.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-bmp.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/filter/image-gif.c b/filter/image-gif.c index d78670d37..caa39439e 100644 --- a/filter/image-gif.c +++ b/filter/image-gif.c @@ -1,5 +1,5 @@ /* - * "$Id: image-gif.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-gif.c 7420 2008-04-01 20:32:00Z mike $" * * GIF image routines for the Common UNIX Printing System (CUPS). * @@ -693,5 +693,5 @@ gif_read_lzw(FILE *fp, /* I - File to read from */ /* - * End of "$Id: image-gif.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-gif.c 7420 2008-04-01 20:32:00Z mike $". */ diff --git a/filter/image-jpeg.c b/filter/image-jpeg.c index 4c22d4910..4710ab269 100644 --- a/filter/image-jpeg.c +++ b/filter/image-jpeg.c @@ -1,5 +1,5 @@ /* - * "$Id: image-jpeg.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-jpeg.c 7355 2008-02-28 20:49:40Z mike $" * * JPEG image routines for the Common UNIX Printing System (CUPS). * @@ -318,5 +318,5 @@ _cupsImageReadJPEG( /* - * End of "$Id: image-jpeg.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-jpeg.c 7355 2008-02-28 20:49:40Z mike $". */ diff --git a/filter/image-photocd.c b/filter/image-photocd.c index 6485de3f0..d8638618d 100644 --- a/filter/image-photocd.c +++ b/filter/image-photocd.c @@ -1,5 +1,5 @@ /* - * "$Id: image-photocd.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-photocd.c 7221 2008-01-16 22:20:08Z mike $" * * PhotoCD routines for the Common UNIX Printing System (CUPS). * @@ -329,5 +329,5 @@ _cupsImageReadPhotoCD( /* - * End of "$Id: image-photocd.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-photocd.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/filter/image-pix.c b/filter/image-pix.c index e5e20f463..0bd87023c 100644 --- a/filter/image-pix.c +++ b/filter/image-pix.c @@ -1,5 +1,5 @@ /* - * "$Id: image-pix.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-pix.c 7221 2008-01-16 22:20:08Z mike $" * * Alias PIX image routines for the Common UNIX Printing System (CUPS). * @@ -236,5 +236,5 @@ read_short(FILE *fp) /* I - File to read from */ /* - * End of "$Id: image-pix.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-pix.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/filter/image-png.c b/filter/image-png.c index 332b3c39b..95cc9eacd 100644 --- a/filter/image-png.c +++ b/filter/image-png.c @@ -1,5 +1,5 @@ /* - * "$Id: image-png.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-png.c 7437 2008-04-09 03:16:10Z mike $" * * PNG image routines for the Common UNIX Printing System (CUPS). * @@ -311,5 +311,5 @@ _cupsImageReadPNG( /* - * End of "$Id: image-png.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-png.c 7437 2008-04-09 03:16:10Z mike $". */ diff --git a/filter/image-pnm.c b/filter/image-pnm.c index cef9a481f..0d55dba5b 100644 --- a/filter/image-pnm.c +++ b/filter/image-pnm.c @@ -1,5 +1,5 @@ /* - * "$Id: image-pnm.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-pnm.c 7374 2008-03-08 01:13:26Z mike $" * * Portable Any Map file routines for the Common UNIX Printing System (CUPS). * @@ -316,5 +316,5 @@ _cupsImageReadPNM( /* - * End of "$Id: image-pnm.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-pnm.c 7374 2008-03-08 01:13:26Z mike $". */ diff --git a/filter/image-private.h b/filter/image-private.h index 1323d75a7..9ce1dd254 100644 --- a/filter/image-private.h +++ b/filter/image-private.h @@ -1,5 +1,5 @@ /* - * "$Id: image-private.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-private.h 7473 2008-04-21 17:51:58Z mike $" * * Private image library definitions for the Common UNIX Printing * System (CUPS). @@ -213,5 +213,5 @@ extern void _cupsRasterClearError(void); #endif /* !_CUPS_IMAGE_PRIVATE_H_ */ /* - * End of "$Id: image-private.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-private.h 7473 2008-04-21 17:51:58Z mike $". */ diff --git a/filter/image-sgi.c b/filter/image-sgi.c index de81ceb6a..7fec66e67 100644 --- a/filter/image-sgi.c +++ b/filter/image-sgi.c @@ -1,5 +1,5 @@ /* - * "$Id: image-sgi.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-sgi.c 7223 2008-01-16 23:41:19Z mike $" * * SGI image file routines for the Common UNIX Printing System (CUPS). * @@ -291,5 +291,5 @@ _cupsImageReadSGI( /* - * End of "$Id: image-sgi.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-sgi.c 7223 2008-01-16 23:41:19Z mike $". */ diff --git a/filter/image-sgilib.c b/filter/image-sgilib.c index e0b1b3326..58e9204e8 100644 --- a/filter/image-sgilib.c +++ b/filter/image-sgilib.c @@ -1,5 +1,5 @@ /* - * "$Id: image-sgilib.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-sgilib.c 7221 2008-01-16 22:20:08Z mike $" * * SGI image file format library routines for the Common UNIX Printing * System (CUPS). @@ -885,5 +885,5 @@ write_rle16(FILE *fp, /* I - File to write to */ /* - * End of "$Id: image-sgilib.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-sgilib.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/filter/image-sun.c b/filter/image-sun.c index 6817ecfea..d6575143d 100644 --- a/filter/image-sun.c +++ b/filter/image-sun.c @@ -1,5 +1,5 @@ /* - * "$Id: image-sun.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image-sun.c 7223 2008-01-16 23:41:19Z mike $" * * Sun Raster image file routines for the Common UNIX Printing System (CUPS). * @@ -403,5 +403,5 @@ read_unsigned(FILE *fp) /* I - File to read from */ /* - * End of "$Id: image-sun.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image-sun.c 7223 2008-01-16 23:41:19Z mike $". */ diff --git a/filter/image.c b/filter/image.c index 493c50633..97c7ada48 100644 --- a/filter/image.c +++ b/filter/image.c @@ -1,5 +1,5 @@ /* - * "$Id: image.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image.c 7473 2008-04-21 17:51:58Z mike $" * * Base image support for the Common UNIX Printing System (CUPS). * @@ -808,5 +808,5 @@ get_tile(cups_image_t *img, /* I - Image */ /* - * End of "$Id: image.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image.c 7473 2008-04-21 17:51:58Z mike $". */ diff --git a/filter/image.h b/filter/image.h index b2de9ad99..ca3521aed 100644 --- a/filter/image.h +++ b/filter/image.h @@ -1,5 +1,5 @@ /* - * "$Id: image.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: image.h 7306 2008-02-15 00:52:38Z mike $" * * Image library definitions for the Common UNIX Printing System (CUPS). * @@ -126,5 +126,5 @@ extern void cupsImageWhiteToWhite(const cups_ib_t *in, #endif /* !_CUPS_IMAGE_H_ */ /* - * End of "$Id: image.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: image.h 7306 2008-02-15 00:52:38Z mike $". */ diff --git a/filter/imagetoraster.c b/filter/imagetoraster.c index bc4a806ec..ba21bdb1c 100644 --- a/filter/imagetoraster.c +++ b/filter/imagetoraster.c @@ -1,5 +1,5 @@ /* - * "$Id: imagetoraster.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: imagetoraster.c 7306 2008-02-15 00:52:38Z mike $" * * Image file to raster filter for the Common UNIX Printing System (CUPS). * @@ -4311,5 +4311,5 @@ raster_cb( /* - * End of "$Id: imagetoraster.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: imagetoraster.c 7306 2008-02-15 00:52:38Z mike $". */ diff --git a/filter/interpret.c b/filter/interpret.c index 945c8f40a..72579b22c 100644 --- a/filter/interpret.c +++ b/filter/interpret.c @@ -1,5 +1,5 @@ /* - * "$Id: interpret.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: interpret.c 7460 2008-04-16 02:19:54Z mike $" * * PPD command interpreter for the Common UNIX Printing System (CUPS). * @@ -1644,5 +1644,5 @@ DEBUG_stack(_cups_ps_stack_t *st) /* I - Stack */ /* - * End of "$Id: interpret.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: interpret.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/filter/pstops.c b/filter/pstops.c index 77bc2df96..7517a4978 100644 --- a/filter/pstops.c +++ b/filter/pstops.c @@ -1,5 +1,5 @@ /* - * "$Id: pstops.c 7006 2007-10-04 17:43:38Z mike $" + * "$Id: pstops.c 7689 2008-06-24 20:50:57Z mike $" * * PostScript filter for the Common UNIX Printing System (CUPS). * @@ -1259,6 +1259,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */ int level; /* Embedded document level */ pstops_page_t *pageinfo; /* Page information */ int first_page; /* First page on N-up output? */ + int has_page_setup; /* Does the page have %%Begin/EndPageSetup? */ int bounding_box[4]; /* PageBoundingBox */ @@ -1508,7 +1509,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */ if (first_page) doc_puts(doc, "%%BeginPageSetup\n"); - if (!strncmp(line, "%%BeginPageSetup", 16)) + if ((has_page_setup = !strncmp(line, "%%BeginPageSetup", 16)) != 0) { int feature = 0; /* In a Begin/EndFeature block? */ @@ -1540,6 +1541,9 @@ copy_page(cups_file_t *fp, /* I - File to read from */ else if (!strncmp(line, "%%Include", 9)) continue; + if (line[0] != '%' && !feature) + break; + if (!feature || (doc->number_up == 1 && !doc->fitplot)) doc_write(doc, line, linelen); } @@ -1548,8 +1552,11 @@ copy_page(cups_file_t *fp, /* I - File to read from */ * Skip %%EndPageSetup... */ - if (linelen > 0) - linelen = cupsFileGetLine(fp, line, linesize); + if (linelen > 0 && !strncmp(line, "%%EndPageSetup", 14)) + { + linelen = cupsFileGetLine(fp, line, linesize); + has_page_setup = 0; + } } if (first_page) @@ -1629,6 +1636,45 @@ copy_page(cups_file_t *fp, /* I - File to read from */ * Finish the PageSetup section as needed... */ + if (has_page_setup) + { + int feature = 0; /* In a Begin/EndFeature block? */ + + doc_write(doc, line, linelen); + + while ((linelen = cupsFileGetLine(fp, line, linesize)) > 0) + { + if (!strncmp(line, "%%EndPageSetup", 14)) + break; + else if (!strncmp(line, "%%BeginFeature:", 15)) + { + feature = 1; + + if (doc->number_up > 1 || doc->fitplot) + continue; + } + else if (!strncmp(line, "%%EndFeature", 12)) + { + feature = 0; + + if (doc->number_up > 1 || doc->fitplot) + continue; + } + else if (!strncmp(line, "%%Include", 9)) + continue; + + if (!feature || (doc->number_up == 1 && !doc->fitplot)) + doc_write(doc, line, linelen); + } + + /* + * Skip %%EndPageSetup... + */ + + if (linelen > 0 && !strncmp(line, "%%EndPageSetup", 14)) + linelen = cupsFileGetLine(fp, line, linesize); + } + if (first_page) doc_puts(doc, "%%EndPageSetup\n"); @@ -3369,5 +3415,5 @@ write_labels(pstops_doc_t *doc, /* I - Document information */ /* - * End of "$Id: pstops.c 7006 2007-10-04 17:43:38Z mike $". + * End of "$Id: pstops.c 7689 2008-06-24 20:50:57Z mike $". */ diff --git a/filter/raster.c b/filter/raster.c index 3805dc0f5..015c5a8c4 100644 --- a/filter/raster.c +++ b/filter/raster.c @@ -1,5 +1,5 @@ /* - * "$Id: raster.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: raster.c 7616 2008-05-28 00:34:13Z mike $" * * Raster file routines for the Common UNIX Printing System (CUPS). * @@ -1201,5 +1201,5 @@ cups_write(int fd, /* I - File descriptor */ /* - * End of "$Id: raster.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: raster.c 7616 2008-05-28 00:34:13Z mike $". */ diff --git a/filter/rasterbench.c b/filter/rasterbench.c index ea0a08be5..a344db50f 100644 --- a/filter/rasterbench.c +++ b/filter/rasterbench.c @@ -1,5 +1,5 @@ /* - * "$Id: rasterbench.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: rasterbench.c 7376 2008-03-19 21:07:45Z mike $" * * Raster benchmark program for the Common UNIX Printing System (CUPS). * @@ -350,5 +350,5 @@ write_test(int fd, /* I - File descriptor to write to */ /* - * End of "$Id: rasterbench.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: rasterbench.c 7376 2008-03-19 21:07:45Z mike $". */ diff --git a/filter/rastertoepson.c b/filter/rastertoepson.c index b528bc06b..6f3278284 100644 --- a/filter/rastertoepson.c +++ b/filter/rastertoepson.c @@ -1,5 +1,5 @@ /* - * "$Id: rastertoepson.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: rastertoepson.c 7450 2008-04-14 19:39:02Z mike $" * * EPSON ESC/P and ESC/P2 filter for the Common UNIX Printing System * (CUPS). @@ -1130,5 +1130,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: rastertoepson.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: rastertoepson.c 7450 2008-04-14 19:39:02Z mike $". */ diff --git a/filter/rastertohp.c b/filter/rastertohp.c index 9f9b7bc45..48b0cfcb1 100644 --- a/filter/rastertohp.c +++ b/filter/rastertohp.c @@ -1,5 +1,5 @@ /* - * "$Id: rastertohp.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: rastertohp.c 7403 2008-03-26 15:23:43Z mike $" * * Hewlett-Packard Page Control Language filter for the Common UNIX * Printing System (CUPS). @@ -856,5 +856,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: rastertohp.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: rastertohp.c 7403 2008-03-26 15:23:43Z mike $". */ diff --git a/filter/rastertolabel.c b/filter/rastertolabel.c index d5564e626..a529e281a 100644 --- a/filter/rastertolabel.c +++ b/filter/rastertolabel.c @@ -1,5 +1,5 @@ /* - * "$Id: rastertolabel.c 6819 2007-08-20 21:11:57Z mike $" + * "$Id: rastertolabel.c 7615 2008-05-25 07:17:07Z mike $" * * Label printer filter for the Common UNIX Printing System (CUPS). * @@ -1288,5 +1288,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: rastertolabel.c 6819 2007-08-20 21:11:57Z mike $". + * End of "$Id: rastertolabel.c 7615 2008-05-25 07:17:07Z mike $". */ diff --git a/filter/testraster.c b/filter/testraster.c index f366aa817..d42438bdb 100644 --- a/filter/testraster.c +++ b/filter/testraster.c @@ -1,5 +1,5 @@ /* - * "$Id: testraster.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testraster.c 7376 2008-03-19 21:07:45Z mike $" * * Raster test program routines for the Common UNIX Printing System (CUPS). * @@ -1078,5 +1078,5 @@ print_changes( /* - * End of "$Id: testraster.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: testraster.c 7376 2008-03-19 21:07:45Z mike $". */ diff --git a/fonts/Makefile b/fonts/Makefile index 4aee78913..a73e23433 100644 --- a/fonts/Makefile +++ b/fonts/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Fonts makefile for the Common UNIX Printing System (CUPS). # @@ -102,5 +102,5 @@ uninstall: # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/locale/Makefile b/locale/Makefile index a948cf991..04656a59c 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6993 2007-09-28 18:05:28Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Locale file makefile for the Common UNIX Printing System (CUPS). # @@ -188,5 +188,5 @@ include Dependencies # -# End of "$Id: Makefile 6993 2007-09-28 18:05:28Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/locale/checkpo.c b/locale/checkpo.c index 6b76f5be5..81f9212cc 100644 --- a/locale/checkpo.c +++ b/locale/checkpo.c @@ -1,5 +1,5 @@ /* - * "$Id: checkpo.c 6922 2007-09-06 14:18:02Z mike $" + * "$Id: checkpo.c 7223 2008-01-16 23:41:19Z mike $" * * Verify that translations in the .po file have the same number and type of * printf-style format strings. @@ -336,5 +336,5 @@ free_formats(cups_array_t *fmts) /* I - Array of format strings */ /* - * End of "$Id: checkpo.c 6922 2007-09-06 14:18:02Z mike $". + * End of "$Id: checkpo.c 7223 2008-01-16 23:41:19Z mike $". */ diff --git a/locale/cups_id.po b/locale/cups_id.po new file mode 100644 index 000000000..4fe6c9ffc --- /dev/null +++ b/locale/cups_id.po @@ -0,0 +1,3894 @@ +# translation of cups_id.po to Bahasa Indonesia +# +# "$Id$" +# +# Message catalog template for the Common UNIX Printing System (CUPS). +# +# Copyright 2007 by Apple Inc. +# Copyright 2005-2007 by Easy Software Products. +# +# These coded instructions, statements, and computer programs are the +# property of Apple Inc. and are protected by Federal copyright +# law. Distribution and use rights are outlined in the file "LICENSE.txt" +# which should have been included with this file. If this file is +# file is missing or damaged, see the license at "http://www.cups.org/". +# +# Citra Paska <dirgitadevina@yahoo.co.id>, 2008. +msgid "" +msgstr "" +"Project-Id-Version: cups_id\n" +"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n" +"POT-Creation-Date: 2007-07-27 14:55-0700\n" +"PO-Revision-Date: 2008-04-07 14:19+0700\n" +"Last-Translator: Citra Paska <dirgitadevina@yahoo.co.id>\n" +"Language-Team: Bahasa Indonesia\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#: systemv/lpstat.c:2103 systemv/lpstat.c:2216 +msgid "\t\t(all)\n" +msgstr "\t\t(semua)\n" + +#: systemv/lpstat.c:2106 systemv/lpstat.c:2109 systemv/lpstat.c:2219 +#: systemv/lpstat.c:2222 +msgid "\t\t(none)\n" +msgstr "\t\t(nihil)\n" + +#: berkeley/lpc.c:450 +#, c-format +msgid "\t%d entries\n" +msgstr "\t%d entri\n" + +#: systemv/lpstat.c:2084 systemv/lpstat.c:2197 +msgid "\tAfter fault: continue\n" +msgstr "\tUsai kesalahan: lanjut\n" + +#: systemv/lpstat.c:1670 systemv/lpstat.c:2050 systemv/lpstat.c:2163 +msgid "\tAlerts:" +msgstr "\tPeringatan:" + +#: systemv/lpstat.c:2107 systemv/lpstat.c:2220 +msgid "\tBanner required\n" +msgstr "\tPataka diperlukan\n" + +#: systemv/lpstat.c:2108 systemv/lpstat.c:2221 +msgid "\tCharset sets:\n" +msgstr "\tSet karakter:\n" + +#: systemv/lpstat.c:2073 systemv/lpstat.c:2186 +msgid "\tConnection: direct\n" +msgstr "\tKoneksi: langsung\n" + +#: systemv/lpstat.c:2064 systemv/lpstat.c:2177 +msgid "\tConnection: remote\n" +msgstr "\tKoneksi: jarak jauh\n" + +#: systemv/lpstat.c:2111 systemv/lpstat.c:2224 +msgid "\tDefault page size:\n" +msgstr "\tUkuran halaman standar:\n" + +#: systemv/lpstat.c:2110 systemv/lpstat.c:2223 +msgid "\tDefault pitch:\n" +msgstr "\tTiti utama:\n" + +#: systemv/lpstat.c:2112 systemv/lpstat.c:2225 +msgid "\tDefault port settings:\n" +msgstr "\tPengaturan portal utama:\n" + +#: systemv/lpstat.c:2045 systemv/lpstat.c:2158 +#, c-format +msgid "\tDescription: %s\n" +msgstr "\tDeskripsi: %s\n" + +#: systemv/lpstat.c:2039 systemv/lpstat.c:2152 +msgid "" +"\tForm mounted:\n" +"\tContent types: any\n" +"\tPrinter types: unknown\n" +msgstr "" +"\tFormulir yang diakuisisi:\n" +"\tJenis isi: apa saja\n" +"\tJenis pencetak: tak dikenal\n" + +#: systemv/lpstat.c:2105 systemv/lpstat.c:2218 +msgid "\tForms allowed:\n" +msgstr "\tFormulir yang boleh:\n" + +#: systemv/lpstat.c:2068 systemv/lpstat.c:2181 +#, c-format +msgid "\tInterface: %s.ppd\n" +msgstr "\tAntarmuka: %s.ppd\n" + +#: systemv/lpstat.c:2077 systemv/lpstat.c:2190 +#, c-format +msgid "\tInterface: %s/interfaces/%s\n" +msgstr "\tAntarmuka: %s/antarmuka/%s\n" + +#: systemv/lpstat.c:2081 systemv/lpstat.c:2194 +#, c-format +msgid "\tInterface: %s/ppd/%s.ppd\n" +msgstr "\tAntarmuka: %s/ppd/%s.ppd\n" + +#: systemv/lpstat.c:2059 systemv/lpstat.c:2172 +#, c-format +msgid "\tLocation: %s\n" +msgstr "\tLokasi: %s\n" + +#: systemv/lpstat.c:2083 systemv/lpstat.c:2196 +msgid "\tOn fault: no alert\n" +msgstr "\tSaat kegagalan: tanpa peringatan\n" + +#: systemv/lpstat.c:2088 systemv/lpstat.c:2102 systemv/lpstat.c:2201 +#: systemv/lpstat.c:2215 +msgid "\tUsers allowed:\n" +msgstr "\tPengguna yang boleh:\n" + +#: systemv/lpstat.c:2095 systemv/lpstat.c:2208 +msgid "\tUsers denied:\n" +msgstr "\tPengguna yang dilarang:\n" + +#: berkeley/lpc.c:452 +msgid "\tdaemon present\n" +msgstr "\tkehadiran daemon\n" + +#: berkeley/lpc.c:448 +msgid "\tno entries\n" +msgstr "\ttak ada entri\n" + +#: berkeley/lpc.c:420 berkeley/lpc.c:432 +#, c-format +msgid "\tprinter is on device '%s' speed -1\n" +msgstr "\tpencetak pada perangkat '%s' kecepatan -1\n" + +#: berkeley/lpc.c:445 +msgid "\tprinting is disabled\n" +msgstr "\tproses cetak dinonaktifkan\n" + +#: berkeley/lpc.c:443 +msgid "\tprinting is enabled\n" +msgstr "\tproses cetak diaktifkan\n" + +#: systemv/lpstat.c:1676 +#, c-format +msgid "\tqueued for %s\n" +msgstr "\tantrian untuk %s\n" + +#: berkeley/lpc.c:440 +msgid "\tqueuing is disabled\n" +msgstr "\tantrian dinonaktifkan\n" + +#: berkeley/lpc.c:438 +msgid "\tqueuing is enabled\n" +msgstr "\tantrian diaktifkan\n" + +#: systemv/lpstat.c:2032 systemv/lpstat.c:2145 +msgid "\treason unknown\n" +msgstr "\talasan tak dikenal\n" + +#: systemv/cupstestppd.c:363 +msgid "" +"\n" +" DETAILED CONFORMANCE TEST RESULTS\n" +msgstr "" +"\n" +" DETIL HASIL KECOCOKAN TES\n" + +#: systemv/cupstestppd.c:324 systemv/cupstestppd.c:328 +msgid " REF: Page 15, section 3.1.\n" +msgstr " REF: Halaman 15, seksi 3.1.\n" + +#: systemv/cupstestppd.c:320 +msgid " REF: Page 15, section 3.2.\n" +msgstr " REF: Halaman 15, seksi 3.2.\n" + +#: systemv/cupstestppd.c:336 +msgid " REF: Page 19, section 3.3.\n" +msgstr " REF: Halaman 19, seksi 3.3.\n" + +#: systemv/cupstestppd.c:298 +msgid " REF: Page 20, section 3.4.\n" +msgstr " REF: Halaman 20, seksi 3.4.\n" + +#: systemv/cupstestppd.c:340 +msgid " REF: Page 27, section 3.5.\n" +msgstr " REF: Halaman 27, seksi 3.5.\n" + +#: systemv/cupstestppd.c:294 +msgid " REF: Page 42, section 5.2.\n" +msgstr " REF: Halaman 42, seksi 5.2.\n" + +#: systemv/cupstestppd.c:332 +msgid " REF: Pages 16-17, section 3.2.\n" +msgstr " REF: Halaman 16-17, seksi 3.2.\n" + +#: systemv/cupstestppd.c:308 +msgid " REF: Pages 42-45, section 5.2.\n" +msgstr " REF: Halaman 42-45, seksi 5.2.\n" + +#: systemv/cupstestppd.c:303 +msgid " REF: Pages 45-46, section 5.2.\n" +msgstr " REF: Halaman 45-46, seksi 5.2.\n" + +#: systemv/cupstestppd.c:312 +msgid " REF: Pages 48-49, section 5.2.\n" +msgstr " REF: Halaman 48-49, seksi 5.2.\n" + +#: systemv/cupstestppd.c:316 +msgid " REF: Pages 52-54, section 5.2.\n" +msgstr " REF: Halaman 52-54, seksi 5.2.\n" + +#: berkeley/lpq.c:547 +#, c-format +msgid " %-39.39s %.0f bytes\n" +msgstr " %-39.39s %.0f bita\n" + +#: systemv/cupstestppd.c:480 +#, c-format +msgid " PASS Default%s\n" +msgstr " LEWAT Default%s\n" + +#: systemv/cupstestppd.c:417 +msgid " PASS DefaultImageableArea\n" +msgstr " LEWAT DefaultImageableArea\n" + +#: systemv/cupstestppd.c:451 +msgid " PASS DefaultPaperDimension\n" +msgstr " LEWAT DefaultPaperDimension\n" + +#: systemv/cupstestppd.c:503 +msgid " PASS FileVersion\n" +msgstr " LEWAT FileVersion\n" + +#: systemv/cupstestppd.c:523 +msgid " PASS FormatVersion\n" +msgstr " LEWAT FormatVersion\n" + +#: systemv/cupstestppd.c:543 +msgid " PASS LanguageEncoding\n" +msgstr " LEWAT LanguageEncoding\n" + +#: systemv/cupstestppd.c:563 +msgid " PASS LanguageVersion\n" +msgstr " LEWAT LanguageVersion\n" + +#: systemv/cupstestppd.c:615 +msgid " PASS Manufacturer\n" +msgstr " LEWAT Manufacturer\n" + +#: systemv/cupstestppd.c:655 +msgid " PASS ModelName\n" +msgstr " LEWAT ModelName\n" + +#: systemv/cupstestppd.c:675 +msgid " PASS NickName\n" +msgstr " LEWAT NickName\n" + +#: systemv/cupstestppd.c:735 +msgid " PASS PCFileName\n" +msgstr " LEWAT PCFileName\n" + +#: systemv/cupstestppd.c:810 +msgid " PASS PSVersion\n" +msgstr " LEWAT PSVersion\n" + +#: systemv/cupstestppd.c:715 +msgid " PASS PageRegion\n" +msgstr " LEWAT PageRegion\n" + +#: systemv/cupstestppd.c:695 +msgid " PASS PageSize\n" +msgstr " LEWAT PageSize\n" + +#: systemv/cupstestppd.c:770 +msgid " PASS Product\n" +msgstr " LEWAT Product\n" + +#: systemv/cupstestppd.c:845 +msgid " PASS ShortNickName\n" +msgstr " LEWAT ShortNickName\n" + +#: systemv/cupstestppd.c:2364 +#, c-format +msgid "" +" WARN \"%s %s\" conflicts with \"%s %s\"\n" +" (constraint=\"%s %s %s %s\")\n" +msgstr "" +" AWAS \"%s %s\" konflik dengan \"%s %s\"\n" +" (constraint=\"%s %s %s %s\")\n" + +#: systemv/cupstestppd.c:1229 +#, c-format +msgid " WARN %s has no corresponding options!\n" +msgstr " AWAS %s tak memiliki opsi yang berkorespondensi!\n" + +#: systemv/cupstestppd.c:1353 +#, c-format +msgid "" +" WARN %s shares a common prefix with %s\n" +" REF: Page 15, section 3.2.\n" +msgstr "" +" AWAS %s berbagi prefiks umum dengan %s\n" +" REF: Halaman 15, seksi 3.2.\n" + +#: systemv/cupstestppd.c:1254 +msgid " WARN Default choices conflicting!\n" +msgstr " AWAS Pilihan utama mengalami konflik!\n" + +#: systemv/cupstestppd.c:1244 +#, c-format +msgid "" +" WARN Duplex option keyword %s should be named Duplex or JCLDuplex!\n" +" REF: Page 122, section 5.17\n" +msgstr "" +" AWAS Pilihan kata kunci Duplex %s seharusnya dinamai Duplex atau JCLDuplex!\n" +" REF: Halaman 122, seksi 5.17\n" + +#: systemv/cupstestppd.c:1682 +msgid " WARN File contains a mix of CR, LF, and CR LF line endings!\n" +msgstr " AWAS Berkas mengandung campuran pada akhir baris CR, LF, dan CR LF!\n" + +#: systemv/cupstestppd.c:1270 +msgid "" +" WARN LanguageEncoding required by PPD 4.3 spec.\n" +" REF: Pages 56-57, section 5.3.\n" +msgstr "" +" AWAS LanguageEncoding diperlukan oleh spesifikasi PPD 4.3.\n" +" REF: Halaman 56-57, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1664 +#, c-format +msgid " WARN Line %d only contains whitespace!\n" +msgstr " AWAS Baris %d hanya mengandung spasi!\n" + +#: systemv/cupstestppd.c:1278 +msgid "" +" WARN Manufacturer required by PPD 4.3 spec.\n" +" REF: Pages 58-59, section 5.3.\n" +msgstr "" +" AWAS Manufacturer diperlukan oleh spesifikasi PPD 4.3.\n" +" REF: Halaman 58-59, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1409 +#, c-format +msgid " WARN Missing APDialogExtension file \"%s\"\n" +msgstr " AWAS Kehilangan berkas APDialogExtension \"%s\"\n" + +#: systemv/cupstestppd.c:1423 +#, c-format +msgid " WARN Missing APPrinterIconPath file \"%s\"\n" +msgstr " AWAS Kehilangan berkas APPrinterIconPath \"%s\"\n" + +#: systemv/cupstestppd.c:1392 +#, c-format +msgid " WARN Missing cupsICCProfile file \"%s\"\n" +msgstr " AWAS Kehilangan berkas cupsICCProfile \"%s\"\n" + +#: systemv/cupstestppd.c:1687 +msgid " WARN Non-Windows PPD files should use lines ending with only LF, not CR LF!\n" +msgstr " AWAS Berkas PPD non-Windows seharusnya hanya berakhir baris LF, bukan CR LF!\n" + +#: systemv/cupstestppd.c:1262 +#, c-format +msgid "" +" WARN Obsolete PPD version %.1f!\n" +" REF: Page 42, section 5.2.\n" +msgstr "" +" AWAS PPD usang versi %.1f!\n" +" REF: Halaman 42, seksi 5.2.\n" + +#: systemv/cupstestppd.c:1291 +msgid "" +" WARN PCFileName longer than 8.3 in violation of PPD spec.\n" +" REF: Pages 61-62, section 5.3.\n" +msgstr "" +" AWAS PCFileName lebih panjang dari 8.3 melanggar spesifikasi PPD.\n" +" REF: Halaman 61-62, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1325 +msgid "" +" WARN Protocols contains PJL but JCL attributes are not set.\n" +" REF: Pages 78-79, section 5.7.\n" +msgstr "" +" AWAS Protocols mengandung PJL tetapi atribut JCL tidak diset.\n" +" REF: Halaman 78-79, seksi 5.7.\n" + +#: systemv/cupstestppd.c:1316 +msgid "" +" WARN Protocols contains both PJL and BCP; expected TBCP.\n" +" REF: Pages 78-79, section 5.7.\n" +msgstr "" +" AWAS Protocols mengandung PJL dan BCP; diharapkan TBCP.\n" +" REF: Halaman 78-79, seksi 5.7.\n" + +#: systemv/cupstestppd.c:1299 +msgid "" +" WARN ShortNickName required by PPD 4.3 spec.\n" +" REF: Pages 64-65, section 5.3.\n" +msgstr "" +" AWAS ShortNickName diperlukan oleh spesifikasi PPD 4.3.\n" +" REF: Halaman 64-65, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1831 +#, c-format +msgid " %s %s %s does not exist!\n" +msgstr " %s %s %s tidak ada!\n" + +#: systemv/cupstestppd.c:2095 +#, c-format +msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n" +msgstr " %s UTF-8 jelek \"%s\" string translasi untuk pilihan %s!\n" + +#: systemv/cupstestppd.c:2125 systemv/cupstestppd.c:2174 +#: systemv/cupstestppd.c:2213 +#, c-format +msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n" +msgstr " %s UTF-8 jelek \"%s\" string translasi untuk %s, pilihan %s!\n" + +#: systemv/cupstestppd.c:1882 +#, c-format +msgid " %s Bad cupsFilter value \"%s\"!\n" +msgstr " %s cupsFilter jelek nilai \"%s\"!\n" + +#: systemv/cupstestppd.c:1933 +#, c-format +msgid " %s Bad cupsPreFilter value \"%s\"!\n" +msgstr " %s cupsPreFilter jelek nilai \"%s\"!\n" + +#: systemv/cupstestppd.c:2046 +#, c-format +msgid " %s Bad language \"%s\"!\n" +msgstr " %s Bahasa jelek \"%s\"!\n" + +#: systemv/cupstestppd.c:2081 +#, c-format +msgid " %s Missing \"%s\" translation string for option %s!\n" +msgstr " %s Kehilangan \"%s\" string translasi untuk opsi %s!\n" + +#: systemv/cupstestppd.c:2157 systemv/cupstestppd.c:2197 +#, c-format +msgid " %s Missing \"%s\" translation string for option %s, choice %s!\n" +msgstr " %s Kehilangan \"%s\" string translasi untuk opsi %s, pilihan %s!\n" + +#: systemv/cupstestppd.c:1749 systemv/cupstestppd.c:1764 +#, c-format +msgid " %s Missing choice *%s %s in UIConstraint \"*%s %s *%s %s\"!\n" +msgstr " %s Kehilangan pilihan *%s %s pada UIConstraint \"*%s %s *%s %s\"!\n" + +#: systemv/cupstestppd.c:1911 +#, c-format +msgid " %s Missing cupsFilter file \"%s\"\n" +msgstr " %s Kehilangan berkas cupsFilter \"%s\"\n" + +#: systemv/cupstestppd.c:1962 +#, c-format +msgid " %s Missing cupsPreFilter file \"%s\"\n" +msgstr " %s Kehilangan berkas cupsPreFilter \"%s\"\n" + +#: systemv/cupstestppd.c:1725 systemv/cupstestppd.c:1732 +#, c-format +msgid " %s Missing option %s in UIConstraint \"*%s %s *%s %s\"!\n" +msgstr " %s Kehilangan opsi %s pada UIConstraint \"*%s %s *%s %s\"!\n" + +#: systemv/cupstestppd.c:2250 +#, c-format +msgid " %s No base translation \"%s\" is included in file!\n" +msgstr " %s Tidak ada basis translasi \"%s\" yang disertakan pada berkas!\n" + +#: systemv/cupstestppd.c:1060 +#, c-format +msgid "" +" **FAIL** %s must be 1284DeviceID!\n" +" REF: Page 72, section 5.5\n" +msgstr "" +" **GAGAL** %s seharusnya 1284DeviceID!\n" +" REF: Halaman 72, seksi 5.5\n" + +#: systemv/cupstestppd.c:471 +#, c-format +msgid "" +" **FAIL** BAD Default%s %s\n" +" REF: Page 40, section 4.5.\n" +msgstr "" +" **GAGAL** Default%s %s JELEK\n" +" REF: Halaman 40, seksi 4.5.\n" + +#: systemv/cupstestppd.c:407 +#, c-format +msgid "" +" **FAIL** BAD DefaultImageableArea %s!\n" +" REF: Page 102, section 5.15.\n" +msgstr "" +" **GAGAL** DefaultImageableArea %s JELEK!\n" +" REF: Halaman 102, seksi 5.15.\n" + +#: systemv/cupstestppd.c:443 +#, c-format +msgid "" +" **FAIL** BAD DefaultPaperDimension %s!\n" +" REF: Page 103, section 5.15.\n" +msgstr "" +" **GAGAL** DefaultPaperDimension %s JELEK!\n" +" REF: Halaman 103, seksi 5.15.\n" + +#: systemv/cupstestppd.c:871 +msgid "" +" **FAIL** BAD JobPatchFile attribute in file\n" +" REF: Page 24, section 3.4.\n" +msgstr "" +" **GAGAL** Atribut JELEK JobPatchFile dalam berkas\n" +" REF: Halaman 24, seksi 3.4.\n" + +#: systemv/cupstestppd.c:591 +msgid "" +" **FAIL** BAD Manufacturer (should be \"HP\")\n" +" REF: Page 211, table D.1.\n" +msgstr "" +" **GAGAL** Manufacturer JELEK (seharusnya \"HP\")\n" +" REF: Halaman 211, tabel D.1.\n" + +#: systemv/cupstestppd.c:607 +msgid "" +" **FAIL** BAD Manufacturer (should be \"Oki\")\n" +" REF: Page 211, table D.1.\n" +msgstr "" +" **GAGAL** Manufacturer JELEK (seharusnya \"Oki\")\n" +" REF: Halaman 211, tabel D.1.\n" + +#: systemv/cupstestppd.c:646 +#, c-format +msgid "" +" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n" +" REF: Pages 59-60, section 5.3.\n" +msgstr "" +" **GAGAL** ModelName JELEK - \"%c\" tidak diperbolehkan dalam string.\n" +" REF: Halaman 59-60, seksi 5.3.\n" + +#: systemv/cupstestppd.c:802 +msgid "" +" **FAIL** BAD PSVersion - not \"(string) int\".\n" +" REF: Pages 62-64, section 5.3.\n" +msgstr "" +" **GAGAL** PSVersion JELEK - bukan \"(string) int\".\n" +" REF: Halaman 62-64, seksi 5.3.\n" + +#: systemv/cupstestppd.c:763 +msgid "" +" **FAIL** BAD Product - not \"(string)\".\n" +" REF: Page 62, section 5.3.\n" +msgstr "" +" **GAGAL** Product JELEK - bukan \"(string)\".\n" +" REF: Halaman 62, seksi 5.3.\n" + +#: systemv/cupstestppd.c:837 +msgid "" +" **FAIL** BAD ShortNickName - longer than 31 chars.\n" +" REF: Pages 64-65, section 5.3.\n" +msgstr "" +" **GAGAL** ShortNickName JELEK - lebih dari 31 karakter.\n" +" REF: Halaman 64-65, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1042 +#, c-format +msgid "" +" **FAIL** Bad %s choice %s!\n" +" REF: Page 122, section 5.17\n" +msgstr "" +" **GAGAL** %s jelek pilihan %s!\n" +" REF: Halaman 122, seksi 5.17\n" + +#: systemv/cupstestppd.c:992 +#, c-format +msgid "" +" **FAIL** Bad %s choice %s!\n" +" REF: Page 84, section 5.9\n" +msgstr "" +" **GAGAL** %s jelek pilihan %s!\n" +" REF: Halaman 84, seksi 5.9\n" + +#: systemv/cupstestppd.c:1094 +#, c-format +msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n" +msgstr " **GAGAL** LanguageEncoding %s jelek - seharusnya ISOLatin1!\n" + +#: systemv/cupstestppd.c:1108 +#, c-format +msgid " **FAIL** Bad LanguageVersion %s - must be English!\n" +msgstr " **GAGAL** LanguageVersion %s jelek - seharusnya English!\n" + +#: systemv/cupstestppd.c:2391 +#, c-format +msgid " **FAIL** Default option code cannot be interpreted: %s\n" +msgstr " **GAGAL** Kode pilihan utama tidak bisa diinterpretasikan: %s\n" + +#: systemv/cupstestppd.c:1167 +#, c-format +msgid " **FAIL** Default translation string for option %s choice %s contains 8-bit characters!\n" +msgstr " **GAGAL** String translasi utama untuk opsi %s pilihan %s mengandung karakter 8-bit!\n" + +#: systemv/cupstestppd.c:1140 +#, c-format +msgid " **FAIL** Default translation string for option %s contains 8-bit characters!\n" +msgstr " **GAGAL** String translasi utama untuk opsi %s mengandung karakter 8-bit!\n" + +#: systemv/cupstestppd.c:1021 +#, c-format +msgid "" +" **FAIL** REQUIRED %s does not define choice None!\n" +" REF: Page 122, section 5.17\n" +msgstr "" +" **GAGAL** DIPERLUKAN %s, bukan malah memilih None (Nihil)!\n" +" REF: Halaman 122, seksi 5.17\n" + +#: systemv/cupstestppd.c:491 +#, c-format +msgid "" +" **FAIL** REQUIRED Default%s\n" +" REF: Page 40, section 4.5.\n" +msgstr "" +" **GAGAL** DIPERLUKAN Default%s\n" +" REF: Halaman 40, seksi 4.5.\n" + +#: systemv/cupstestppd.c:392 +msgid "" +" **FAIL** REQUIRED DefaultImageableArea\n" +" REF: Page 102, section 5.15.\n" +msgstr "" +" **GAGAL** DIPERLUKAN DefaultImageableArea\n" +" REF: Halaman 102, seksi 5.15.\n" + +#: systemv/cupstestppd.c:428 +msgid "" +" **FAIL** REQUIRED DefaultPaperDimension\n" +" REF: Page 103, section 5.15.\n" +msgstr "" +" **GAGAL** DIPERLUKAN DefaultPaperDimension\n" +" REF: Halaman 103, seksi 5.15.\n" + +#: systemv/cupstestppd.c:513 +msgid "" +" **FAIL** REQUIRED FileVersion\n" +" REF: Page 56, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN FileVersion\n" +" REF: Halaman 56, seksi 5.3.\n" + +#: systemv/cupstestppd.c:533 +msgid "" +" **FAIL** REQUIRED FormatVersion\n" +" REF: Page 56, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN FormatVersion\n" +" REF: Halaman 56, seksi 5.3.\n" + +#: systemv/cupstestppd.c:922 +#, c-format +msgid "" +" **FAIL** REQUIRED ImageableArea for PageSize %s\n" +" REF: Page 41, section 5.\n" +" REF: Page 102, section 5.15.\n" +msgstr "" +" **GAGAL** DIPERLUKAN ImageableArea untuk PageSize %s\n" +" REF: Halaman 41, seksi 5.\n" +" REF: Halaman 102, seksi 5.15.\n" + +#: systemv/cupstestppd.c:553 +msgid "" +" **FAIL** REQUIRED LanguageEncoding\n" +" REF: Pages 56-57, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN LanguageEncoding\n" +" REF: Halaman 56-57, seksi 5.3.\n" + +#: systemv/cupstestppd.c:573 +msgid "" +" **FAIL** REQUIRED LanguageVersion\n" +" REF: Pages 57-58, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN LanguageVersion\n" +" REF: Halaman 57-58, seksi 5.3.\n" + +#: systemv/cupstestppd.c:625 +msgid "" +" **FAIL** REQUIRED Manufacturer\n" +" REF: Pages 58-59, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN Manufacturer\n" +" REF: Halaman 58-59, seksi 5.3.\n" + +#: systemv/cupstestppd.c:665 +msgid "" +" **FAIL** REQUIRED ModelName\n" +" REF: Pages 59-60, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN ModelName\n" +" REF: Halaman 59-60, seksi 5.3.\n" + +#: systemv/cupstestppd.c:685 +msgid "" +" **FAIL** REQUIRED NickName\n" +" REF: Page 60, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN NickName\n" +" REF: Halaman 60, seksi 5.3.\n" + +#: systemv/cupstestppd.c:745 +msgid "" +" **FAIL** REQUIRED PCFileName\n" +" REF: Pages 61-62, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PCFileName\n" +" REF: Halaman 61-62, seksi 5.3.\n" + +#: systemv/cupstestppd.c:820 +msgid "" +" **FAIL** REQUIRED PSVersion\n" +" REF: Pages 62-64, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PSVersion\n" +" REF: Halaman 62-64, seksi 5.3.\n" + +#: systemv/cupstestppd.c:725 +msgid "" +" **FAIL** REQUIRED PageRegion\n" +" REF: Page 100, section 5.14.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PageRegion\n" +" REF: Halaman 100, seksi 5.14.\n" + +#: systemv/cupstestppd.c:891 +msgid "" +" **FAIL** REQUIRED PageSize\n" +" REF: Page 41, section 5.\n" +" REF: Page 99, section 5.14.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PageSize\n" +" REF: Halaman 41, seksi 5.\n" +" REF: Halaman 99, seksi 5.14.\n" + +#: systemv/cupstestppd.c:705 +msgid "" +" **FAIL** REQUIRED PageSize\n" +" REF: Pages 99-100, section 5.14.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PageSize\n" +" REF: Halaman 99-100, seksi 5.14.\n" + +#: systemv/cupstestppd.c:944 +#, c-format +msgid "" +" **FAIL** REQUIRED PaperDimension for PageSize %s\n" +" REF: Page 41, section 5.\n" +" REF: Page 103, section 5.15.\n" +msgstr "" +" **GAGAL** DIPERLUKAN PaperDimension untuk PageSize %s\n" +" REF: Halaman 41, seksi 5.\n" +" REF: Halaman 103, seksi 5.15.\n" + +#: systemv/cupstestppd.c:780 +msgid "" +" **FAIL** REQUIRED Product\n" +" REF: Page 62, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN Product\n" +" REF: Halaman 62, seksi 5.3.\n" + +#: systemv/cupstestppd.c:855 +msgid "" +" **FAIL** REQUIRED ShortNickName\n" +" REF: Page 64-65, section 5.3.\n" +msgstr "" +" **GAGAL** DIPERLUKAN ShortNickName\n" +" REF: Halaman 64-65, seksi 5.3.\n" + +#: systemv/cupstestppd.c:1432 +#, c-format +msgid " %d ERRORS FOUND\n" +msgstr " %d KESALAHAN DITEMUKAN\n" + +#: systemv/cupstestdsc.c:239 systemv/cupstestdsc.c:281 +#, c-format +msgid "" +" Bad %%%%BoundingBox: on line %d!\n" +" REF: Page 39, %%%%BoundingBox:\n" +msgstr "" +" %%%%BoundingBox jelek: pada baris %d!\n" +" REF: Halaman 39, %%%%BoundingBox:\n" + +#: systemv/cupstestdsc.c:310 +#, c-format +msgid "" +" Bad %%%%Page: on line %d!\n" +" REF: Page 53, %%%%Page:\n" +msgstr "" +" %%%%Page jelek: pada baris %d!\n" +" REF: Halaman 53, %%%%Page:\n" + +#: systemv/cupstestdsc.c:223 systemv/cupstestdsc.c:263 +#, c-format +msgid "" +" Bad %%%%Pages: on line %d!\n" +" REF: Page 43, %%%%Pages:\n" +msgstr "" +" %%%%Page jelek: pada baris %d!\n" +" REF: Halaman 43, %%%%Page:\n" + +#: systemv/cupstestdsc.c:180 +#, c-format +msgid "" +" Line %d is longer than 255 characters (%d)!\n" +" REF: Page 25, Line Length\n" +msgstr "" +" Baris %d lebih dari 255 karakter (%d)!\n" +" REF: Halaman 25, Line Length (Panjang Baris)\n" + +#: systemv/cupstestdsc.c:197 +msgid "" +" Missing %!PS-Adobe-3.0 on first line!\n" +" REF: Page 17, 3.1 Conforming Documents\n" +msgstr "" +" Kehilangan %!PS-Adobe-3.0 pada baris pertama!\n" +" REF: Halaman 17, 3.1 Conforming Documents (Menyesuaikan Dokumen)\n" + +#: systemv/cupstestdsc.c:367 +#, c-format +msgid "" +" Missing %%EndComments comment!\n" +" REF: Page 41, %%EndComments\n" +msgstr "" +" Kehilangan komentar %%EndComments!\n" +" REF: Halaman 41, %%EndComments\n" + +#: systemv/cupstestdsc.c:347 +#, c-format +msgid "" +" Missing or bad %%BoundingBox: comment!\n" +" REF: Page 39, %%BoundingBox:\n" +msgstr "" +" Kehilangan atau %%BoundingBox jelek: komentar!\n" +" REF: Halaman 39, %%BoundingBox:\n" + +#: systemv/cupstestdsc.c:377 +#, c-format +msgid "" +" Missing or bad %%Page: comments!\n" +" REF: Page 53, %%Page:\n" +msgstr "" +" Kehilangan atau %%Page jelek: komentar!\n" +" REF: Halaman 53, %%Page:\n" + +#: systemv/cupstestdsc.c:357 +#, c-format +msgid "" +" Missing or bad %%Pages: comment!\n" +" REF: Page 43, %%Pages:\n" +msgstr "" +" Kehilangan atau %%Pages jelek: komentar!\n" +" REF: Halaman 43, %%Pages:\n" + +#: systemv/cupstestppd.c:1434 +msgid " NO ERRORS FOUND\n" +msgstr " TIDAK ADA KESALAHAN\n" + +#: systemv/cupstestdsc.c:400 +#, c-format +msgid " Saw %d lines that exceeded 255 characters!\n" +msgstr " Menemukan %d baris yang melebihi 255 karakter!\n" + +#: systemv/cupstestdsc.c:395 +#, c-format +msgid " Too many %%BeginDocument comments!\n" +msgstr " Terlalu banyak komentar %%BeginDocument!\n" + +#: systemv/cupstestdsc.c:387 +#, c-format +msgid " Too many %%EndDocument comments!\n" +msgstr " Terlalu banyak komentar %%EndDocument!\n" + +#: systemv/cupstestdsc.c:407 +msgid " Warning: file contains binary data!\n" +msgstr " Peringatan: berkas mengandung data biner!\n" + +#: systemv/cupstestdsc.c:415 +#, c-format +msgid " Warning: no %%EndComments comment in file!\n" +msgstr " Peringatan: tak ada komentar %%EndComments dalam berkas!\n" + +#: systemv/cupstestdsc.c:411 +#, c-format +msgid " Warning: obsolete DSC version %.1f in file!\n" +msgstr " Peringatan: DSC usang versi %.1f dalam berkas!\n" + +#: systemv/cupstestppd.c:389 systemv/cupstestppd.c:404 +#: systemv/cupstestppd.c:425 systemv/cupstestppd.c:440 +#: systemv/cupstestppd.c:468 systemv/cupstestppd.c:488 +#: systemv/cupstestppd.c:510 systemv/cupstestppd.c:530 +#: systemv/cupstestppd.c:550 systemv/cupstestppd.c:570 +#: systemv/cupstestppd.c:588 systemv/cupstestppd.c:604 +#: systemv/cupstestppd.c:622 systemv/cupstestppd.c:643 +#: systemv/cupstestppd.c:662 systemv/cupstestppd.c:682 +#: systemv/cupstestppd.c:702 systemv/cupstestppd.c:722 +#: systemv/cupstestppd.c:742 systemv/cupstestppd.c:760 +#: systemv/cupstestppd.c:777 systemv/cupstestppd.c:799 +#: systemv/cupstestppd.c:817 systemv/cupstestppd.c:834 +#: systemv/cupstestppd.c:852 systemv/cupstestppd.c:868 +#: systemv/cupstestppd.c:888 systemv/cupstestppd.c:919 +#: systemv/cupstestppd.c:941 systemv/cupstestppd.c:989 +#: systemv/cupstestppd.c:1018 systemv/cupstestppd.c:1039 +#: systemv/cupstestppd.c:1057 systemv/cupstestppd.c:1090 +#: systemv/cupstestppd.c:1104 systemv/cupstestppd.c:1136 +#: systemv/cupstestppd.c:1163 systemv/cupstestppd.c:1721 +#: systemv/cupstestppd.c:1746 systemv/cupstestppd.c:1761 +#: systemv/cupstestppd.c:1827 systemv/cupstestppd.c:1878 +#: systemv/cupstestppd.c:1908 systemv/cupstestppd.c:1929 +#: systemv/cupstestppd.c:1959 systemv/cupstestppd.c:2042 +#: systemv/cupstestppd.c:2077 systemv/cupstestppd.c:2091 +#: systemv/cupstestppd.c:2121 systemv/cupstestppd.c:2153 +#: systemv/cupstestppd.c:2170 systemv/cupstestppd.c:2193 +#: systemv/cupstestppd.c:2209 systemv/cupstestppd.c:2246 +#: systemv/cupstestppd.c:2387 +msgid " FAIL\n" +msgstr " GAGAL\n" + +#: systemv/cupstestppd.c:274 +#, c-format +msgid "" +" FAIL\n" +" **FAIL** Unable to open PPD file - %s\n" +msgstr "" +" GAGAL\n" +" **GAGAL** Tak bisa membuka berkas PPD - %s\n" + +#: systemv/cupstestppd.c:285 +#, c-format +msgid "" +" FAIL\n" +" **FAIL** Unable to open PPD file - %s on line %d.\n" +msgstr "" +" GAGAL\n" +" **GAGAL** Tak bisa membuka berkas PPD - %s pada baris %d.\n" + +#: systemv/cupstestppd.c:1187 +msgid " PASS\n" +msgstr " LEWAT\n" + +#: berkeley/lpq.c:553 +#, c-format +msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n" +msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bita\n" + +#: berkeley/lpq.c:558 +#, c-format +msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n" +msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bita\n" + +#: systemv/lpstat.c:762 +#, c-format +msgid "%s accepting requests since %s\n" +msgstr "%s menerima permintaan sejak %s\n" + +#: scheduler/ipp.c:9002 +#, c-format +msgid "%s cannot be changed." +msgstr "%s tidak bisa diubah." + +#: berkeley/lpc.c:194 +#, c-format +msgid "%s is not implemented by the CUPS version of lpc.\n" +msgstr "%s tidak diimplementasikan oleh versi lpc CUPS.\n" + +#: berkeley/lpq.c:644 +#, c-format +msgid "%s is not ready\n" +msgstr "%s tidak siap\n" + +#: berkeley/lpq.c:637 +#, c-format +msgid "%s is ready\n" +msgstr "%s siap\n" + +#: berkeley/lpq.c:640 +#, c-format +msgid "%s is ready and printing\n" +msgstr "%s siap dan sedang mencetak\n" + +#: systemv/lpstat.c:765 +#, c-format +msgid "" +"%s not accepting requests since %s -\n" +"\t%s\n" +msgstr "" +"%s tidak menerima permintaan sejak %s -\n" +"\t%s\n" + +#: scheduler/ipp.c:627 +#, c-format +msgid "%s not supported!" +msgstr "%s tak didukung!" + +#: systemv/lpstat.c:774 +#, c-format +msgid "%s/%s accepting requests since %s\n" +msgstr "%s/%s menerima permintaan sejak %s\n" + +#: systemv/lpstat.c:777 +#, c-format +msgid "" +"%s/%s not accepting requests since %s -\n" +"\t%s\n" +msgstr "" +"%s/%s tidak menerima permintaan sejak %s -\n" +"\t%s\n" + +#: berkeley/lpq.c:545 +#, c-format +msgid "%s: %-33.33s [job %d localhost]\n" +msgstr "%s: %-33.33s [tugas %d localhost]\n" + +#: systemv/cancel.c:304 systemv/cancel.c:368 +#, c-format +msgid "%s: %s failed: %s\n" +msgstr "%s: %s gagal: %s\n" + +#: systemv/accept.c:75 +#, c-format +msgid "%s: Don't know what to do!\n" +msgstr "%s: Tidak tahu apa yang hendak dikerjakan!\n" + +#: berkeley/lpr.c:392 systemv/lp.c:630 +#, c-format +msgid "%s: Error - %s environment variable names non-existent destination \"%s\"!\n" +msgstr "%s: Kesalahan - Nama variabel lingkungan %s sebenarnya tidak ada \"%s\"!\n" + +#: systemv/lp.c:268 +#, c-format +msgid "%s: Error - bad job ID!\n" +msgstr "%s: Kesalahan - ID tugas jelek!\n" + +#: systemv/lp.c:255 +#, c-format +msgid "%s: Error - cannot print files and alter jobs simultaneously!\n" +msgstr "%s: Kesalahan - tidak bisa mencetak dan mengubah tugas secara bersamaan!\n" + +#: systemv/lp.c:547 +#, c-format +msgid "%s: Error - cannot print from stdin if files or a job ID are provided!\n" +msgstr "%s: Kesalahan - tak bisa mencetak dari stdin apabila berkas atau ID tugas disediakan!\n" + +#: systemv/lp.c:501 +#, c-format +msgid "%s: Error - expected character set after '-S' option!\n" +msgstr "%s: Kesalahan - diharapkan set karakter usai opsi '-S'!\n" + +#: systemv/lp.c:521 +#, c-format +msgid "%s: Error - expected content type after '-T' option!\n" +msgstr "%s: Kesalahan - diharapkan jenis isi usai opsi '-T'!\n" + +#: systemv/lp.c:301 +#, c-format +msgid "%s: Error - expected copies after '-n' option!\n" +msgstr "%s: Kesalahan - diharapkan banyaknya rangkap usai opsi '-n'!\n" + +#: berkeley/lpr.c:284 +#, c-format +msgid "%s: Error - expected copy count after '-#' option!\n" +msgstr "%s: Kesalahan - diharapkan banyak hitungan rangkap usai opsi '-#'!\n" + +#: berkeley/lpr.c:249 +#, c-format +msgid "%s: Error - expected destination after '-P' option!\n" +msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-P'!\n" + +#: systemv/lpstat.c:231 +#, c-format +msgid "%s: Error - expected destination after '-b' option!\n" +msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-b'!\n" + +#: systemv/lp.c:170 +#, c-format +msgid "%s: Error - expected destination after '-d' option!\n" +msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-d'!\n" + +#: systemv/lp.c:203 +#, c-format +msgid "%s: Error - expected form after '-f' option!\n" +msgstr "%s: Kesalahan - diharapkan formulir/bentuk usai opsi '-f'!\n" + +#: systemv/lp.c:432 +#, c-format +msgid "%s: Error - expected hold name after '-H' option!\n" +msgstr "%s: Kesalahan - diharapkan nama yang ditahan usai opsi '-H'!\n" + +#: berkeley/lpr.c:141 +#, c-format +msgid "%s: Error - expected hostname after '-H' option!\n" +msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-H'!\n" + +#: berkeley/lpq.c:188 berkeley/lprm.c:155 systemv/accept.c:139 +#: systemv/cancel.c:131 systemv/lp.c:224 systemv/lpstat.c:294 +#, c-format +msgid "%s: Error - expected hostname after '-h' option!\n" +msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-h'!\n" + +#: systemv/lp.c:410 +#, c-format +msgid "%s: Error - expected mode list after '-y' option!\n" +msgstr "%s: Kesalahan - diharapkan daftar mode usai opsi '-y'!\n" + +#: berkeley/lpr.c:308 +#, c-format +msgid "%s: Error - expected name after '-%c' option!\n" +msgstr "%s: Kesalahan - diharapkan nama usai opsi '-%c'!\n" + +#: systemv/lp.c:324 +#, c-format +msgid "%s: Error - expected option string after '-o' option!\n" +msgstr "%s: Kesalahan - diharapkan opsi string usai opsi '-o'!\n" + +#: systemv/lp.c:480 +#, c-format +msgid "%s: Error - expected page list after '-P' option!\n" +msgstr "%s: Kesalahan - diharapkan daftar halaman usai opsi '-P'!\n" + +#: systemv/lp.c:345 +#, c-format +msgid "%s: Error - expected priority after '-%c' option!\n" +msgstr "%s: Kesalahan - diharapkan prioritas usai opsi '-%c'!\n" + +#: systemv/accept.c:158 +#, c-format +msgid "%s: Error - expected reason text after '-r' option!\n" +msgstr "%s: Kesalahan - diharapkan teks alasan usai opsi '-r'!\n" + +#: systemv/lp.c:392 +#, c-format +msgid "%s: Error - expected title after '-t' option!\n" +msgstr "%s: Kesalahan - diharapkan judul usai opsi '-t'!\n" + +#: berkeley/lpq.c:117 berkeley/lpr.c:121 berkeley/lprm.c:135 +#: systemv/accept.c:113 systemv/cancel.c:100 systemv/lpadmin.c:471 +#: systemv/lp.c:147 systemv/lpstat.c:138 +#, c-format +msgid "%s: Error - expected username after '-U' option!\n" +msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-U'!\n" + +#: systemv/cancel.c:153 +#, c-format +msgid "%s: Error - expected username after '-u' option!\n" +msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-u'!\n" + +#: berkeley/lpr.c:164 +#, c-format +msgid "%s: Error - expected value after '-%c' option!\n" +msgstr "%s: Kesalahan - diharapkan nilai usai opsi '-%c'!\n" + +#: systemv/lpstat.c:158 systemv/lpstat.c:172 +#, c-format +msgid "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' option!\n" +msgstr "%s: Kesalahan - diperlukan \"completed\", \"not-completed\", atau \"all\" usai opsi '-W'!\n" + +#: berkeley/lpr.c:397 systemv/lp.c:635 +#, c-format +msgid "%s: Error - no default destination available.\n" +msgstr "%s: Kesalahan - tidak tersedia tujuan utama.\n" + +#: systemv/lp.c:368 +#, c-format +msgid "%s: Error - priority must be between 1 and 100.\n" +msgstr "%s: Kesalahan - prioritas harus antara 1 dan 100.\n" + +#: berkeley/lpr.c:401 systemv/lp.c:639 +#, c-format +msgid "%s: Error - scheduler not responding!\n" +msgstr "%s: Kesalahan - penjadwal tidak merespon!\n" + +#: berkeley/lpr.c:475 systemv/lp.c:702 +#, c-format +msgid "%s: Error - stdin is empty, so no job has been sent.\n" +msgstr "%s: Kesalahan - stdin telah kosong, jadi tidak ada tugas yang dikirim.\n" + +#: berkeley/lpr.c:350 systemv/lp.c:580 +#, c-format +msgid "%s: Error - too many files - \"%s\"\n" +msgstr "%s: Kesalahan - terlalu banyak berkas - \"%s\"\n" + +#: berkeley/lpr.c:332 systemv/lp.c:563 +#, c-format +msgid "%s: Error - unable to access \"%s\" - %s\n" +msgstr "%s: Kesalahan - tak bisa mengakses \"%s\" - %s\n" + +#: berkeley/lpr.c:451 systemv/lp.c:679 +#, c-format +msgid "%s: Error - unable to create temporary file \"%s\" - %s\n" +msgstr "%s: Kesalahan - tak bisa membuat berkas temporer \"%s\" - %s\n" + +#: berkeley/lpr.c:461 systemv/lp.c:688 +#, c-format +msgid "%s: Error - unable to write to temporary file \"%s\" - %s\n" +msgstr "%s: Kesalahan - tak bisa menulis berkas temporer \"%s\" - %s\n" + +#: berkeley/lprm.c:118 systemv/cancel.c:223 +#, c-format +msgid "%s: Error - unknown destination \"%s\"!\n" +msgstr "%s: Kesalahan - tujuan tak dikenal \"%s\"!\n" + +#: berkeley/lpq.c:157 +#, c-format +msgid "%s: Error - unknown destination \"%s/%s\"!\n" +msgstr "%s: Kesalahan - tujuan tak dikenal \"%s/%s\"!\n" + +#: berkeley/lpr.c:319 berkeley/lprm.c:181 systemv/accept.c:169 +#: systemv/cancel.c:165 systemv/lp.c:538 systemv/lpstat.c:455 +#, c-format +msgid "%s: Error - unknown option '%c'!\n" +msgstr "%s: Kesalahan - opsi tak dikenal '%c'!\n" + +#: systemv/lp.c:244 +#, c-format +msgid "%s: Expected job ID after '-i' option!\n" +msgstr "%s: Diharapkan ID tugas usai opsi '-i'!\n" + +#: systemv/lpstat.c:528 +#, c-format +msgid "%s: Invalid destination name in list \"%s\"!\n" +msgstr "%s: Nama tujuan tak sah pada daftar \"%s\"!\n" + +#: systemv/lp.c:456 +#, c-format +msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n" +msgstr "%s: Memerlukan ID tugas ('-i jobid') sebelum '-H restart'!\n" + +#: scheduler/cupsfilter.c:388 +#, c-format +msgid "%s: No filter to convert from %s/%s to %s/%s!\n" +msgstr "%s: Tidak ada filter untuk konversi dari %s/%s ke %s/%s!\n" + +#: systemv/accept.c:223 +#, c-format +msgid "%s: Operation failed: %s\n" +msgstr "%s: Operasi gagal: %s\n" + +#: berkeley/lpq.c:103 berkeley/lpr.c:107 berkeley/lprm.c:98 +#: systemv/accept.c:99 systemv/cancel.c:86 systemv/cupsaddsmb.c:91 +#: systemv/lpadmin.c:277 systemv/lp.c:133 systemv/lpinfo.c:73 +#: systemv/lpmove.c:82 systemv/lpstat.c:110 +#, c-format +msgid "%s: Sorry, no encryption support compiled in!\n" +msgstr "%s: Maaf, tidak ada dukungan enkripsi yang dikompilasi!\n" + +#: berkeley/lpq.c:304 systemv/cupsaddsmb.c:149 systemv/cupsaddsmb.c:170 +#: systemv/lpstat.c:565 +#, c-format +msgid "%s: Unable to connect to server\n" +msgstr "%s: Tak bisa terhubung ke server\n" + +#: systemv/accept.c:185 +#, c-format +msgid "%s: Unable to connect to server: %s\n" +msgstr "%s: Tak bisa terhubung ke server: %s\n" + +#: systemv/cancel.c:246 systemv/cancel.c:327 +#, c-format +msgid "%s: Unable to contact server!\n" +msgstr "%s: Tak bisa mengontak server!\n" + +#: scheduler/cupsfilter.c:358 +#, c-format +msgid "%s: Unable to determine MIME type of \"%s\"!\n" +msgstr "%s: Tak bisa menentukan jenis MIME dari \"%s\"!\n" + +#: scheduler/cupsfilter.c:335 +#, c-format +msgid "%s: Unable to read MIME database from \"%s\"!\n" +msgstr "%s: Tak bisa membaca basis data MIME dari \"%s\"!\n" + +#: berkeley/lpq.c:161 systemv/lpstat.c:543 +#, c-format +msgid "%s: Unknown destination \"%s\"!\n" +msgstr "%s: Tujuan tak dikenal \"%s\"!\n" + +#: scheduler/cupsfilter.c:367 +#, c-format +msgid "%s: Unknown destination MIME type %s/%s!\n" +msgstr "%s: Tujuan jenis MIME tak dikenal %s/%s!\n" + +#: scheduler/cupsfilter.c:949 +#, c-format +msgid "%s: Unknown option '%c'!\n" +msgstr "%s: Opsi tak dikenal '%c'!\n" + +#: scheduler/cupsfilter.c:350 +#, c-format +msgid "%s: Unknown source MIME type %s/%s!\n" +msgstr "%s: Sumber jenis MIME tak dikenal %s/%s!\n" + +#: berkeley/lpr.c:178 +#, c-format +msgid "%s: Warning - '%c' format modifier not supported - output may not be correct!\n" +msgstr "%s: Peringatan - format pengubah '%c' tidak didukung - keluaran yang dihasilkan mungkin tak tepat!\n" + +#: systemv/lp.c:509 +#, c-format +msgid "%s: Warning - character set option ignored!\n" +msgstr "%s: Peringatan - opsi set karakter diabaikan!\n" + +#: systemv/lp.c:529 +#, c-format +msgid "%s: Warning - content type option ignored!\n" +msgstr "%s: Peringatan - opsi jenis isi diabaikan!\n" + +#: systemv/lp.c:210 +#, c-format +msgid "%s: Warning - form option ignored!\n" +msgstr "%s: Peringatan - opsi formulir/bentuk diabaikan!\n" + +#: systemv/lp.c:418 +#, c-format +msgid "%s: Warning - mode option ignored!\n" +msgstr "%s: Peringatan - opsi mode diabaikan!\n" + +#: berkeley/lpq.c:245 +#, c-format +msgid "%s: error - %s environment variable names non-existent destination \"%s\"!\n" +msgstr "%s: kesalahan - nama variabel lingkungan %s merupakan tujuan yang tidak ada \"%s\"!\n" + +#: berkeley/lpr.c:192 +#, c-format +msgid "%s: error - expected option=value after '-o' option!\n" +msgstr "%s: kesalahan - diharapkan opsi=nilai usai opsi '-o'!\n" + +#: berkeley/lpq.c:250 +#, c-format +msgid "%s: error - no default destination available.\n" +msgstr "%s: kesalahan - tidak ada tujuan utama.\n" + +#: berkeley/lpc.c:218 +msgid "?Invalid help command unknown\n" +msgstr "?Ketidaksahan perintah bantuan tak dikenal\n" + +#: cgi-bin/admin.c:1994 +msgid "A Samba password is required to export printer drivers!" +msgstr "Diperlukan sandi Samba untuk mengekspor driver pencetak!" + +#: cgi-bin/admin.c:1990 +msgid "A Samba username is required to export printer drivers!" +msgstr "Diperlukan nama pengguna Samba untuk mengekspor driver pencetak!" + +#: scheduler/ipp.c:2208 +#, c-format +msgid "A class named \"%s\" already exists!" +msgstr "Kelas bernama \"%s\" sudah ada!" + +#: scheduler/ipp.c:936 +#, c-format +msgid "A printer named \"%s\" already exists!" +msgstr "Pencetak bernama \"%s\" sudah ada!" + +#: cgi-bin/admin.c:157 +msgid "Accept Jobs" +msgstr "Terima Tugas" + +#: cgi-bin/admin.c:421 +msgid "Add Class" +msgstr "Tambah Kelas" + +#: cgi-bin/admin.c:713 +msgid "Add Printer" +msgstr "Tambah Pencetak" + +#: cgi-bin/admin.c:303 cgi-bin/admin.c:326 cgi-bin/admin.c:377 +#: cgi-bin/admin.c:387 +msgid "Add RSS Subscription" +msgstr "Tambah Subskripsi RSS" + +#: cgi-bin/admin.c:201 cgi-bin/admin.c:212 cgi-bin/admin.c:2357 +msgid "Administration" +msgstr "Administrasi" + +#: scheduler/ipp.c:1033 +#, c-format +msgid "Attempt to set %s printer-state to bad value %d!" +msgstr "Mencoba mengeset printer-state %s pada nilai jelek %d!" + +#: scheduler/ipp.c:307 +#, c-format +msgid "Attribute groups are out of order (%x < %x)!" +msgstr "Kelompok atribut di luar jangkauan (%x < %x)!" + +#: cups/ppd.c:314 +msgid "Bad OpenGroup" +msgstr "OpenGroup Jelek" + +#: cups/ppd.c:316 +msgid "Bad OpenUI/JCLOpenUI" +msgstr "OpenUI/JCLOpenUI Jelek" + +#: cups/ppd.c:318 +msgid "Bad OrderDependency" +msgstr "OrderDependency Jelek" + +#: cups/ppd.c:319 +msgid "Bad UIConstraints" +msgstr "UIConstraints Jelek" + +#: scheduler/ipp.c:1328 +#, c-format +msgid "Bad copies value %d." +msgstr "Nilai rangkap %d jelek." + +#: cups/ppd.c:327 +msgid "Bad custom parameter" +msgstr "Parameter ubahan jelek" + +#: scheduler/ipp.c:2323 +#, c-format +msgid "Bad device-uri \"%s\"!" +msgstr "URI perangkat (device-uri) \"%s\" jelek!" + +#: scheduler/ipp.c:8493 scheduler/ipp.c:9764 +#, c-format +msgid "Bad document-format \"%s\"!" +msgstr "Format dokumen (document-format) \"%s\" jelek!" + +#: scheduler/ipp.c:9018 +msgid "Bad job-priority value!" +msgstr "Nilai prioritas tugas (job-priority) jelek!" + +#: scheduler/ipp.c:9043 +msgid "Bad job-state value!" +msgstr "Nilai status tugas (job-state) jelek!" + +#: scheduler/ipp.c:2833 scheduler/ipp.c:3180 scheduler/ipp.c:5656 +#: scheduler/ipp.c:6825 scheduler/ipp.c:7051 scheduler/ipp.c:7815 +#: scheduler/ipp.c:8039 scheduler/ipp.c:8406 scheduler/ipp.c:8912 +#, c-format +msgid "Bad job-uri attribute \"%s\"!" +msgstr "Atribut job-uri \"%s\" jelek!" + +#: scheduler/ipp.c:5244 +#, c-format +msgid "Bad notify-pull-method \"%s\"!" +msgstr "notify-pull-method \"%s\" jelek!" + +#: scheduler/ipp.c:5218 +#, c-format +msgid "Bad notify-recipient-uri URI \"%s\"!" +msgstr "URI notify-recipient-uri \"%s\" jelek!" + +#: scheduler/ipp.c:1346 +#, c-format +msgid "Bad number-up value %d." +msgstr "Nilai number-up %d jelek." + +#: cups/adminutil.c:298 +#, c-format +msgid "Bad option + choice on line %d!" +msgstr "Opsi + yang dipilih pada baris %d jelek!" + +#: scheduler/ipp.c:1363 +#, c-format +msgid "Bad page-ranges values %d-%d." +msgstr "Nilai jangkauan halaman %d-%d jelek." + +#: scheduler/ipp.c:2360 +#, c-format +msgid "Bad port-monitor \"%s\"!" +msgstr "port-monitor \"%s\" jelek!" + +#: scheduler/ipp.c:2408 +#, c-format +msgid "Bad printer-state value %d!" +msgstr "Nilai printer-state %d jelek!" + +#: scheduler/ipp.c:274 +#, c-format +msgid "Bad request version number %d.%d!" +msgstr "Permintaan nomor versi %d.%d jelek!" + +#: cgi-bin/admin.c:1264 +msgid "Bad subscription ID!" +msgstr "ID Subskripsi jelek!" + +#: cgi-bin/admin.c:2967 +msgid "Banners" +msgstr "Pataka" + +#: cgi-bin/admin.c:1265 cgi-bin/admin.c:1297 cgi-bin/admin.c:1307 +msgid "Cancel RSS Subscription" +msgstr "Batal Subskripsi RSS" + +#: cgi-bin/admin.c:1366 cgi-bin/admin.c:1429 cgi-bin/admin.c:1438 +#: cgi-bin/admin.c:1449 +msgid "Change Settings" +msgstr "Ubah Pengaturan" + +#: scheduler/ipp.c:1953 scheduler/ipp.c:5256 +#, c-format +msgid "Character set \"%s\" not supported!" +msgstr "Set karakter \"%s\" tidak didukung!" + +#: cgi-bin/classes.c:154 cgi-bin/classes.c:201 +msgid "Classes" +msgstr "Kelas" + +#: berkeley/lpc.c:209 +msgid "" +"Commands may be abbreviated. Commands are:\n" +"\n" +"exit help quit status ?\n" +msgstr "" +"Perintah bisa saja singkat. Perintahnya:\n" +"\n" +"exit help quit status ?\n" + +#: scheduler/ipp.c:7333 scheduler/ipp.c:7349 scheduler/ipp.c:8509 +#, c-format +msgid "Could not scan type \"%s\"!" +msgstr "Tidak akan memindai jenis \"%s\"!" + +#: backend/ipp.c:1440 +msgid "Cover open." +msgstr "Penutup terbuka." + +#: cups/ppd.c:1066 cups/ppd.c:1118 +msgid "Custom" +msgstr "Ubahan" + +#: cgi-bin/admin.c:1719 cgi-bin/admin.c:1730 cgi-bin/admin.c:1775 +msgid "Delete Class" +msgstr "Hapus Kelas" + +#: cgi-bin/admin.c:1804 cgi-bin/admin.c:1815 cgi-bin/admin.c:1860 +msgid "Delete Printer" +msgstr "Hapus Pencetak" + +#: scheduler/ipp.c:1294 +#, c-format +msgid "Destination \"%s\" is not accepting jobs." +msgstr "Tujuan \"%s\" bukanlah tugas yang diterima." + +#: backend/ipp.c:1474 +msgid "Developer almost empty." +msgstr "Developer hampir kosong." + +#: backend/ipp.c:1476 +msgid "Developer empty!" +msgstr "Developer kosong!" + +#: systemv/lpinfo.c:271 +#, c-format +msgid "" +"Device: uri = %s\n" +" class = %s\n" +" info = %s\n" +" make-and-model = %s\n" +" device-id = %s\n" +msgstr "" +"Perangkat: uri = %s\n" +" kelas = %s\n" +" info = %s\n" +" pembuat-dan-model = %s\n" +" id-perangkat = %s\n" + +#: backend/ipp.c:1444 +msgid "Door open." +msgstr "Pintu terbuka." + +#: filter/pstops.c:408 +#, c-format +msgid "EMERG: Unable to allocate memory for page info: %s\n" +msgstr "DARURAT: Tak bisa mengalokasikan memori untuk halaman info: %s\n" + +#: filter/pstops.c:401 +#, c-format +msgid "EMERG: Unable to allocate memory for pages array: %s\n" +msgstr "DARURAT: Tak bisa mengalokasikan memori untuk larik halaman: %s\n" + +#: backend/usb-darwin.c:635 +#, c-format +msgid "ERROR: %ld: (canceled:%ld)\n" +msgstr "KESALAHAN: %ld: (dibatalkan:%ld)\n" + +#: filter/pstops.c:655 +#, c-format +msgid "ERROR: Bad %%BoundingBox: comment seen!\n" +msgstr "KESALAHAN: %%BoundingBox jelek: komentar terlihat!\n" + +#: filter/pstops.c:2128 +#, c-format +msgid "ERROR: Bad %%IncludeFeature: comment!\n" +msgstr "KESALAHAN: %%IncludeFeature jelek: komentar!\n" + +#: filter/pstops.c:1211 filter/pstops.c:1217 +#, c-format +msgid "ERROR: Bad %%Page: comment in file!\n" +msgstr "KESALAHAN:%%Page jelek: komentar dalam berkas!\n" + +#: filter/pstops.c:1287 +#, c-format +msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n" +msgstr "KESALAHAN: %%PageBoundingBox jelek: komentar dalam berkas!\n" + +#: backend/scsi-irix.c:99 backend/scsi-linux.c:113 +#, c-format +msgid "ERROR: Bad SCSI device file \"%s\"!\n" +msgstr "KESALAHAN: Berkas perangkat SCSI \"%s\" jelek!\n" + +#: filter/texttops.c:269 filter/texttops.c:280 +#, c-format +msgid "ERROR: Bad charset file %s\n" +msgstr "KESALAHAN: Berkas set karakter %s jelek\n" + +#: filter/texttops.c:610 +#, c-format +msgid "ERROR: Bad charset type %s\n" +msgstr "KESALAHAN: Jenis set karakter %s jelek\n" + +#: filter/texttops.c:341 filter/texttops.c:377 filter/texttops.c:505 +#: filter/texttops.c:541 +#, c-format +msgid "ERROR: Bad font description line: %s\n" +msgstr "KESALAHAN: Baris deskripsi huruf: %s jelek\n" + +#: filter/imagetoraster.c:457 +msgid "ERROR: Bad page setup!\n" +msgstr "KESALAHAN: Pengaturan halaman jelek!\n" + +#: filter/texttops.c:354 filter/texttops.c:518 +#, c-format +msgid "ERROR: Bad text direction %s\n" +msgstr "KESALAHAN: Arah teks %s jelek\n" + +#: filter/texttops.c:390 filter/texttops.c:554 +#, c-format +msgid "ERROR: Bad text width %s\n" +msgstr "KESALAHAN: Lebar teks %s jelek\n" + +#: backend/ipp.c:672 +msgid "ERROR: Destination printer does not exist!\n" +msgstr "KESALAHAN: Pencetak yang dituju tidak ada!\n" + +#: filter/pstops.c:644 +#, c-format +msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n" +msgstr "KESALAHAN: Duplikat %%BoundingBox: komentar terlihat!\n" + +#: filter/pstops.c:597 +#, c-format +msgid "ERROR: Duplicate %%Pages: comment seen!\n" +msgstr "KESALAHAN: Duplikat %%Pages: komentar terlihat!\n" + +#: filter/pstops.c:267 +msgid "ERROR: Empty print file!\n" +msgstr "ERROR: Mencetak berkas kosong!\n" + +#: filter/hpgl-input.c:138 +msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n" +msgstr "KESALAHAN: Ketidaksahan HP-GL/2 komentar terlihat, tak bisa mencetak berkas!\n" + +#: filter/pstops.c:1693 +#, c-format +msgid "ERROR: Missing %%EndProlog!\n" +msgstr "KESALAHAN: Kehilangan %%EndProlog!\n" + +#: filter/pstops.c:1758 +#, c-format +msgid "ERROR: Missing %%EndSetup!\n" +msgstr "KESALAHAN: Kehilangan %%EndSetup!\n" + +#: backend/ipp.c:226 +msgid "ERROR: Missing device URI on command-line and no DEVICE_URI environment variable!\n" +msgstr "KESALAHAN: Kehilangan URI perangkat pada baris perintah dan tidak adanya variabel lingkungan DEVICE_URI!\n" + +#: filter/pstops.c:707 +#, c-format +msgid "ERROR: No %%BoundingBox: comment in header!\n" +msgstr "KESALAHAN: Tak ada %%BoundingBox: komentar pada tajuk!\n" + +#: filter/pstops.c:710 +#, c-format +msgid "ERROR: No %%Pages: comment in header!\n" +msgstr "KESALAHAN: Tak ada %%Pages: komentar pada tajuk!\n" + +#: backend/usb.c:203 +msgid "ERROR: No device URI found in argv[0] or in DEVICE_URI environment variable!\n" +msgstr "KESALAHAN: Tak ditemukan URI perangkat pada argv[0] atau dalam variabel lingkungan DEVICE_URI!\n" + +#: filter/rastertoepson.c:1135 filter/rastertohp.c:871 +#: filter/rastertolabel.c:1293 +msgid "ERROR: No pages found!\n" +msgstr "ERROR: Tidak ketemu halaman!\n" + +#: backend/runloop.c:324 +msgid "ERROR: Out of paper!\n" +msgstr "ERROR: Kehabisan kertas!\n" + +#: backend/ipp.c:1535 +msgid "ERROR: PRINTER environment variable not defined!\n" +msgstr "KESALAHAN: Variabel lingkungan PRINTER belum ditentukan!\n" + +#: backend/ipp.c:962 +#, c-format +msgid "ERROR: Print file was not accepted (%s)!\n" +msgstr "KESALAHAN: Berkas cetak tidak diterima (%s)!\n" + +#: backend/ipp.c:527 backend/ipp.c:640 backend/lpd.c:813 backend/socket.c:295 +msgid "ERROR: Printer not responding!\n" +msgstr "ERROR: Pencetak tidak merespon!\n" + +#: backend/lpd.c:992 backend/lpd.c:1121 +#, c-format +msgid "ERROR: Remote host did not accept control file (%d)\n" +msgstr "KESALAHAN: Host jarak jauh tidak menerima berkas kontrol (%d)\n" + +#: backend/lpd.c:1079 +#, c-format +msgid "ERROR: Remote host did not accept data file (%d)\n" +msgstr "KESALAHAN: Host jarak jauh tidak menerima data berkas (%d)\n" + +#: backend/ipp.c:1012 +#, c-format +msgid "ERROR: Unable to add file %d to job: %s\n" +msgstr "KESALAHAN: Tak bisa menambah berkas %d untuk tugas: %s\n" + +#: backend/ipp.c:1220 +#, c-format +msgid "ERROR: Unable to cancel job %d: %s\n" +msgstr "KESALAHAN: Tak bisa membatalkan tugas %d: %s\n" + +#: backend/ipp.c:1302 +#, c-format +msgid "ERROR: Unable to create temporary compressed print file: %s\n" +msgstr "KESALAHAN: Tak bisa membuat berkas-cetak-temporer-terkompresi: %s\n" + +#: backend/ipp.c:1557 +#, c-format +msgid "ERROR: Unable to create temporary file - %s.\n" +msgstr "KESALAHAN: Tak bisa membuat berkas-temporer - %s.\n" + +#: filter/pstops.c:2624 +#, c-format +msgid "ERROR: Unable to create temporary file: %s\n" +msgstr "KESALAHAN: Tak bisa membuat berkas-temporer: %s\n" + +#: backend/ipp.c:1614 +#, c-format +msgid "ERROR: Unable to exec pictwpstops: %s\n" +msgstr "KESALAHAN: Tak bisa mengeksekusi pictwpstops: %s\n" + +#: backend/ipp.c:1627 +#, c-format +msgid "ERROR: Unable to fork pictwpstops: %s\n" +msgstr "ERROR: Tak bisa mem-fork pictwpstops: %s\n" + +#: backend/ipp.c:1542 +#, c-format +msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n" +msgstr "KESALAHAN: Tak bisa mendapatkan berkas PPD untuk pencetak \"%s\" - %s.\n" + +#: backend/ipp.c:1091 +#, c-format +msgid "ERROR: Unable to get job %d attributes (%s)!\n" +msgstr "KESALAHAN: Tak bisa mendapatkan atribut tugas %d (%s)!\n" + +#: backend/ipp.c:681 +#, c-format +msgid "ERROR: Unable to get printer status (%s)!\n" +msgstr "KESALAHAN: Tak bisa mendapatkan status pencetak (%s)!\n" + +#: backend/ipp.c:545 backend/lpd.c:671 backend/socket.c:253 +#, c-format +msgid "ERROR: Unable to locate printer '%s'!\n" +msgstr "KESALAHAN: Tak bisa menentukan lokasi pencetak '%s'!\n" + +#: filter/texttops.c:233 +#, c-format +msgid "ERROR: Unable to open \"%s\" - %s\n" +msgstr "KESALAHAN: Tak bisa membuka \"%s\" - %s\n" + +#: filter/texttops.c:253 +#, c-format +msgid "ERROR: Unable to open %s: %s\n" +msgstr "KESALAHAN: Tak bisa membuka %s: %s\n" + +#: backend/parallel.c:241 backend/scsi-irix.c:136 backend/scsi-linux.c:151 +#: backend/serial.c:256 backend/usb-unix.c:134 +#, c-format +msgid "ERROR: Unable to open device file \"%s\": %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas perangkat \"%s\": %s\n" + +#: filter/pstops.c:255 +#, c-format +msgid "ERROR: Unable to open file \"%s\" - %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas \"%s\" - %s\n" + +#: filter/gziptoany.c:74 +#, c-format +msgid "ERROR: Unable to open file \"%s\": %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas \"%s\": %s\n" + +#: filter/imagetops.c:309 filter/imagetoraster.c:634 +msgid "ERROR: Unable to open image file for printing!\n" +msgstr "KESALAHAN: Tak bisa membuka berkas citra untuk mencetak!\n" + +#: backend/ipp.c:1318 +#, c-format +msgid "ERROR: Unable to open print file \"%s\": %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas cetak \"%s\": %s\n" + +#: backend/usb.c:240 +#, c-format +msgid "ERROR: Unable to open print file %s - %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas cetak %s - %s\n" + +#: backend/lpd.c:460 +#, c-format +msgid "ERROR: Unable to open print file %s: %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas cetak %s: %s\n" + +#: backend/ipp.c:1311 +#, c-format +msgid "ERROR: Unable to open temporary compressed print file: %s\n" +msgstr "KESALAHAN: Tak bisa membuka berkas-cetak-temporer-berkompresi: %s\n" + +#: filter/pstops.c:512 +#, c-format +msgid "ERROR: Unable to seek to offset %ld in file - %s\n" +msgstr "ERROR: Tak bisa mencari letak %ld dalam berkas - %s\n" + +#: filter/pstops.c:510 +#, c-format +msgid "ERROR: Unable to seek to offset %lld in file - %s\n" +msgstr "ERROR: Tak bisa mencari letak %lld dalam berkas - %s\n" + +#: backend/scsi-irix.c:214 backend/scsi-linux.c:233 +#, c-format +msgid "ERROR: Unable to send print data (%d)\n" +msgstr "KESALAHAN: Tak bisa mengirim data cetak (%d)\n" + +#: backend/ipp.c:1641 +#, c-format +msgid "ERROR: Unable to wait for pictwpstops: %s\n" +msgstr "KESALAHAN: Tak bisa menunggu pictwpstops: %s\n" + +#: backend/ipp.c:1328 +#, c-format +msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n" +msgstr "KESALAHAN: Tak bisa menulis %d bita ke \"%s\": %s\n" + +#: backend/runloop.c:121 backend/runloop.c:339 +#, c-format +msgid "ERROR: Unable to write print data: %s\n" +msgstr "KESALAHAN: Tak bisa menulis data cetak: %s\n" + +#: filter/imagetoraster.c:1196 filter/imagetoraster.c:1292 +#: filter/imagetoraster.c:1332 +msgid "ERROR: Unable to write raster data to driver!\n" +msgstr "ERROR: Tak bisa menulis data raster pada driver!\n" + +#: filter/gziptoany.c:96 +#, c-format +msgid "ERROR: Unable to write uncompressed document data: %s\n" +msgstr "KESALAHAN: Tak bisa menulis data dokumen tanpa kompresi: %s\n" + +#: backend/ipp.c:330 +#, c-format +msgid "ERROR: Unknown encryption option value \"%s\"!\n" +msgstr "KESALAHAN: Nilai opsi enkripsi \"%s\" tak dikenal!\n" + +#: backend/lpd.c:352 +#, c-format +msgid "ERROR: Unknown file order \"%s\"\n" +msgstr "KESALAHAN: Urutan berkas \"%s\" tak dikenal\n" + +#: backend/lpd.c:325 +#, c-format +msgid "ERROR: Unknown format character \"%c\"\n" +msgstr "KESALAHAN: Format karakter \"%c\" tak dikenal\n" + +#: backend/ipp.c:371 +#, c-format +msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n" +msgstr "KESALAHAN: Opsi \"%s\" dengan nilai \"%s\" tak dikenal!\n" + +#: backend/lpd.c:339 +#, c-format +msgid "ERROR: Unknown print mode \"%s\"\n" +msgstr "KESALAHAN: Mode cetak \"%s\" tak dikenal\n" + +#: backend/ipp.c:343 +#, c-format +msgid "ERROR: Unknown version option value \"%s\"!\n" +msgstr "KESALAHAN: Nilai opsi versi \"%s\" tak dikenal!\n" + +#: filter/pstops.c:2325 +#, c-format +msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n" +msgstr "KESALAHAN: Nilai kecerahan %s tak didukung, gunakanlah brightness=100!\n" + +#: filter/pstops.c:2392 +#, c-format +msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n" +msgstr "KESALAHAN: Nilai gama %s tak didukung, gunakanlah gamma=1000!\n" + +#: filter/pstops.c:2446 +#, c-format +msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n" +msgstr "KESALAHAN: Nilai number-up %d tak didukung, gunakanlah number-up=1!\n" + +#: filter/pstops.c:2479 +#, c-format +msgid "ERROR: Unsupported number-up-layout value %s, using number-up-layout=lrtb!\n" +msgstr "KESALAHAN: Nilai number-up-layout %s tak didukung, gunakanlah number-up-layout=lrtb!\n" + +#: filter/pstops.c:2529 +#, c-format +msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n" +msgstr "KESALAHAN: Nilai page-border %s tak didukung, gunakanlah page-border=none!\n" + +#: filter/pstops.c:1997 +#, c-format +msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n" +msgstr "KESALAHAN: Kelebihan doc_printf (%d bita) terdeteksi, digagalkan!\n" + +#: backend/ipp.c:1661 +#, c-format +msgid "ERROR: pictwpstops exited on signal %d!\n" +msgstr "KESALAHAN: pictwpstops tertutup pada sinyal %d!\n" + +#: backend/ipp.c:1658 +#, c-format +msgid "ERROR: pictwpstops exited with status %d!\n" +msgstr "KESALAHAN: pictwpstops tertutup dengan status %d!\n" + +#: backend/ipp.c:554 backend/lpd.c:842 backend/socket.c:316 +msgid "ERROR: recoverable: Unable to connect to printer; will retry in 30 seconds...\n" +msgstr "ERROR: pemulihan: Tak bisa menghubungi pencetak; akan mencoba ulang dalam 30 detik...\n" + +#: backend/usb-darwin.c:559 +#, c-format +msgid "ERROR: select() returned %d\n" +msgstr "KESALAHAN: select() dikembalikan pada %d\n" + +#: cgi-bin/admin.c:1477 cgi-bin/admin.c:1489 cgi-bin/admin.c:1543 +#: cgi-bin/admin.c:1550 cgi-bin/admin.c:1585 cgi-bin/admin.c:1598 +#: cgi-bin/admin.c:1622 cgi-bin/admin.c:1692 +msgid "Edit Configuration File" +msgstr "Sunting Berkas Konfigurasi" + +#: cups/adminutil.c:344 +msgid "Empty PPD file!" +msgstr "Berkas PPD kosong!" + +#: cgi-bin/admin.c:2988 +msgid "Ending Banner" +msgstr "Akhir Pataka" + +#: systemv/lppasswd.c:205 +msgid "Enter old password:" +msgstr "Masukkan sandi lama:" + +#: systemv/lppasswd.c:234 +msgid "Enter password again:" +msgstr "Masukkan lagi sandinya:" + +#: systemv/lppasswd.c:223 +msgid "Enter password:" +msgstr "Masukkan sandi:" + +#: scheduler/client.c:2274 +msgid "Enter your username and password or the root username and password to access this page. If you are using Kerberos authentication, make sure you have a valid Kerberos ticket." +msgstr "Masukkan nama pengguna dan sandi Anda atau nama pengguna dan sandi root untuk mengakses halaman ini. Apabila Anda menggunakan otentikasi Kerberos, pastikan bahwa Anda memiliki tiket Kerberos yang sah." + +#: cgi-bin/admin.c:3030 +msgid "Error Policy" +msgstr "Polis Kesalahan" + +#: systemv/lpinfo.c:136 systemv/lpmove.c:103 +msgid "Error: need hostname after '-h' option!\n" +msgstr "Kesalahan: perlu nama host usai opsi '-h'!\n" + +#: cgi-bin/admin.c:1982 cgi-bin/admin.c:2001 +msgid "Export Printers to Samba" +msgstr "Ekspor Pencetak melalui Samba" + +#: systemv/cupstestdsc.c:176 systemv/cupstestdsc.c:193 +#: systemv/cupstestdsc.c:219 systemv/cupstestdsc.c:236 +#: systemv/cupstestdsc.c:260 systemv/cupstestdsc.c:278 +#: systemv/cupstestdsc.c:307 systemv/cupstestdsc.c:344 +#: systemv/cupstestdsc.c:354 systemv/cupstestdsc.c:364 +#: systemv/cupstestdsc.c:374 systemv/cupstestdsc.c:384 +#: systemv/cupstestdsc.c:392 +msgid "FAIL\n" +msgstr "GAGAL\n" + +#: backend/usb-darwin.c:390 +#, c-format +msgid "FATAL: Could not load %s\n" +msgstr "FATAL: Tidak bisa memuat %s\n" + +#: scheduler/ipp.c:2303 +#, c-format +msgid "File device URIs have been disabled! To enable, see the FileDevice directive in \"%s/cupsd.conf\"." +msgstr "Berkas URI perangkat telah dinonaktifkan! Untuk mengaktifkannya, lihatlah petunjuk FileDevice dalam \"%s/cupsd.conf\"." + +#: backend/ipp.c:1466 +msgid "Fuser temperature high!" +msgstr "Suhu fusi tinggi!" + +#: backend/ipp.c:1468 +msgid "Fuser temperature low!" +msgstr "Suhu fusi rendah!" + +#: cups/ppd.c:678 cups/ppd.c:1025 cups/ppd.c:1095 cups/ppd.c:1231 +msgid "General" +msgstr "Umum" + +#: scheduler/ipp.c:2811 scheduler/ipp.c:3100 scheduler/ipp.c:5633 +#: scheduler/ipp.c:6802 scheduler/ipp.c:7792 scheduler/ipp.c:8016 +#: scheduler/ipp.c:8383 scheduler/ipp.c:8889 +msgid "Got a printer-uri attribute but no job-id!" +msgstr "Memperoleh atribut printer-uri tetapi bukan job-id!" + +#: cgi-bin/help.c:89 cgi-bin/help.c:130 cgi-bin/help.c:140 cgi-bin/help.c:170 +msgid "Help" +msgstr "Bantuan" + +#: backend/lpd.c:694 +#, c-format +msgid "INFO: Attempting to connect to host %s for printer %s\n" +msgstr "INFO: Mencoba menghubungi host %s untuk pencetak %s\n" + +#: backend/socket.c:257 +#, c-format +msgid "INFO: Attempting to connect to host %s on port %d\n" +msgstr "INFO: Mencoba menghubungi host %s pada portal %d\n" + +#: backend/ipp.c:1200 +msgid "INFO: Canceling print job...\n" +msgstr "INFO: Membatalkan tugas mencetak...\n" + +#: backend/ipp.c:574 backend/lpd.c:861 backend/socket.c:338 +#, c-format +msgid "INFO: Connected to %s...\n" +msgstr "INFO: Menghubungi %s...\n" + +#: backend/ipp.c:490 +#, c-format +msgid "INFO: Connecting to %s on port %d...\n" +msgstr "INFO: Menghubungi %s pada portal %d...\n" + +#: backend/lpd.c:995 backend/lpd.c:1124 +msgid "INFO: Control file sent successfully\n" +msgstr "INFO: Berkas kontrol berhasil dikirim\n" + +#: backend/lpd.c:1082 +msgid "INFO: Data file sent successfully\n" +msgstr "INFO: Berkas data berhasil dikirim\n" + +#: filter/imagetoraster.c:1139 +#, c-format +msgid "INFO: Formatting page %d...\n" +msgstr "INFO: Memformat halaman %d...\n" + +#: filter/imagetoraster.c:620 +msgid "INFO: Loading image file...\n" +msgstr "INFO: Memuat berkas citra...\n" + +#: backend/socket.c:392 +msgid "INFO: Print file sent, waiting for printer to finish...\n" +msgstr "INFO: Berkas cetak dikirim, menunggu pencetak selesai mengerjakannya...\n" + +#: backend/usb-darwin.c:407 +#, c-format +msgid "INFO: Printer busy (status:0x%08x)\n" +msgstr "INFO: Pencetak sibuk (status:0x%08x)\n" + +#: backend/ipp.c:946 backend/usb-unix.c:122 +msgid "INFO: Printer busy; will retry in 10 seconds...\n" +msgstr "INFO: Pencetak sibuk; dicoba ulang 10 detik lagi...\n" + +#: backend/parallel.c:230 backend/scsi-irix.c:142 backend/scsi-linux.c:157 +#: backend/serial.c:251 +msgid "INFO: Printer busy; will retry in 30 seconds...\n" +msgstr "INFO: Pencetak sibuk; dicoba ulang 30 detik lagi...\n" + +#: backend/usb-unix.c:414 +msgid "INFO: Printer busy; will retry in 5 seconds...\n" +msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n" + +#: backend/ipp.c:665 backend/ipp.c:956 +msgid "INFO: Printer does not support IPP/1.1, trying IPP/1.0...\n" +msgstr "INFO: Pencetak tidak mendukung IPP/1.1, mencoba IPP/1.0...\n" + +#: backend/usb-unix.c:507 +msgid "INFO: Printer is busy; will retry in 5 seconds...\n" +msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n" + +#: backend/runloop.c:233 backend/runloop.c:333 backend/usb-darwin.c:1112 +msgid "INFO: Printer is currently off-line.\n" +msgstr "INFO: Pencetak saat ini terputus.\n" + +#: backend/runloop.c:355 backend/usb-darwin.c:1094 +msgid "INFO: Printer is now on-line.\n" +msgstr "INFO: Pencetak saat ini tersambung.\n" + +#: backend/parallel.c:235 backend/usb-unix.c:128 +msgid "INFO: Printer not connected; will retry in 30 seconds...\n" +msgstr "INFO: Pencetak tak terhubung; dicoba ulang 30 detik lagi...\n" + +#: filter/rastertoepson.c:1090 filter/rastertohp.c:821 +#: filter/rastertolabel.c:1246 +#, c-format +msgid "INFO: Printing page %d, %d%% complete...\n" +msgstr "INFO: Mencetak halaman %d, %d%% selesai...\n" + +#: filter/imagetops.c:804 +#, c-format +msgid "INFO: Printing page %d...\n" +msgstr "INFO: Mencetak halaman %d...\n" + +#: backend/socket.c:416 filter/rastertoepson.c:1137 filter/rastertohp.c:873 +#: filter/rastertolabel.c:1295 +msgid "INFO: Ready to print.\n" +msgstr "INFO: Siap mencetak.\n" + +#: backend/lpd.c:1096 +#, c-format +msgid "INFO: Sending control file (%lu bytes)\n" +msgstr "INFO: Mengirim berkas kontrol (%lu bita)\n" + +#: backend/lpd.c:967 +#, c-format +msgid "INFO: Sending control file (%u bytes)\n" +msgstr "INFO: Mengirim berkas kontrol (%u bita)\n" + +#: backend/usb-darwin.c:491 +msgid "INFO: Sending data\n" +msgstr "INFO: Mengirim data\n" + +#: backend/lpd.c:1020 +#, c-format +msgid "INFO: Sending data file (%ld bytes)\n" +msgstr "INFO: Mengirim berkas data (%ld bita)\n" + +#: backend/lpd.c:1018 +#, c-format +msgid "INFO: Sending data file (%lld bytes)\n" +msgstr "INFO: Mengirim berkas data (%lld bita)\n" + +#: backend/parallel.c:286 backend/socket.c:375 backend/usb-unix.c:179 +#, c-format +msgid "INFO: Sent print file, %ld bytes...\n" +msgstr "INFO: Mengirim berkas cetak, %ld bita...\n" + +#: backend/parallel.c:284 backend/socket.c:373 backend/usb-unix.c:177 +#, c-format +msgid "INFO: Sent print file, %lld bytes...\n" +msgstr "INFO: Mengirim berkas cetak, %lld bita...\n" + +#: backend/lpd.c:1031 +#, c-format +msgid "INFO: Spooling LPR job, %.0f%% complete...\n" +msgstr "INFO: Menggulung tugas LPR, %.0f%% selesai...\n" + +#: backend/ipp.c:507 backend/ipp.c:744 backend/lpd.c:794 +#: backend/parallel.c:216 backend/scsi-irix.c:122 backend/scsi-linux.c:137 +#: backend/serial.c:237 backend/socket.c:278 backend/usb-unix.c:108 +msgid "INFO: Unable to contact printer, queuing on next printer in class...\n" +msgstr "INFO: Tak bisa menghubungi pencetak, diantrikan ke pencetak selanjutnya pada kelas...\n" + +#: backend/ipp.c:1037 +msgid "INFO: Waiting for job to complete...\n" +msgstr "INFO: Menunggu tugas diselesaikan...\n" + +#: cups/ppd.c:322 +msgid "Illegal control character" +msgstr "Karakter kontrol ilegal" + +#: cups/ppd.c:323 +msgid "Illegal main keyword string" +msgstr "String kata kunci utama ilegal" + +#: cups/ppd.c:324 +msgid "Illegal option keyword string" +msgstr "String opsi kata kunci ilegal" + +#: cups/ppd.c:325 +msgid "Illegal translation string" +msgstr "String translasi ilegal" + +#: cups/ppd.c:326 +msgid "Illegal whitespace character" +msgstr "Karakter ilegal" + +#: backend/ipp.c:1458 +msgid "Ink/toner almost empty." +msgstr "Tinta/toner hampir kosong." + +#: backend/ipp.c:1460 +msgid "Ink/toner empty!" +msgstr "Tinta/toner kosong!" + +#: backend/ipp.c:1462 +msgid "Ink/toner waste bin almost full." +msgstr "Baki buangan tinta/toner hampir penuh." + +#: backend/ipp.c:1464 +msgid "Ink/toner waste bin full!" +msgstr "Baki buangan tinta/toner sudah penuh!" + +#: backend/ipp.c:1442 +msgid "Interlock open." +msgstr "Sambungan terbuka." + +#: cups/ppd.c:313 +msgid "Internal error" +msgstr "Kesalahan internal" + +#: cups/ppd.c:1321 +msgid "JCL" +msgstr "JCL" + +#: scheduler/ipp.c:8089 +#, c-format +msgid "Job #%d cannot be restarted - no files!" +msgstr "Tugas #%d tidak bisa dicetak ulang - tidak ada berkas!" + +#: scheduler/ipp.c:2852 scheduler/ipp.c:3198 scheduler/ipp.c:5674 +#: scheduler/ipp.c:6679 scheduler/ipp.c:6843 scheduler/ipp.c:7024 +#: scheduler/ipp.c:7069 scheduler/ipp.c:7833 scheduler/ipp.c:8057 +#: scheduler/ipp.c:8424 scheduler/ipp.c:8930 +#, c-format +msgid "Job #%d does not exist!" +msgstr "Tugas #%d tidak ada!" + +#: scheduler/ipp.c:3229 +#, c-format +msgid "Job #%d is already aborted - can't cancel." +msgstr "Tugas #%d telah digagalkan - tidak bisa dibatalkan." + +#: scheduler/ipp.c:3223 +#, c-format +msgid "Job #%d is already canceled - can't cancel." +msgstr "Tugas #%d sudah dibatalkan - tidak bisa dibatalkan." + +#: scheduler/ipp.c:3235 +#, c-format +msgid "Job #%d is already completed - can't cancel." +msgstr "Tugas #%d sudah diselesaikan - tidak bisa dibatalkan." + +#: scheduler/ipp.c:7100 scheduler/ipp.c:8945 +#, c-format +msgid "Job #%d is finished and cannot be altered!" +msgstr "Tugas #%d sudah diselesaikan dan tidak dapat diubah!" + +#: scheduler/ipp.c:8071 +#, c-format +msgid "Job #%d is not complete!" +msgstr "Tugas #%d tidak selesai!" + +#: scheduler/ipp.c:2867 +#, c-format +msgid "Job #%d is not held for authentication!" +msgstr "Tugas #%d tidak ditahan untuk otentikasi!" + +#: scheduler/ipp.c:7847 +#, c-format +msgid "Job #%d is not held!" +msgstr "Tugas #%d tidak ditahan!" + +#: scheduler/ipp.c:6657 +#, c-format +msgid "Job #%s does not exist!" +msgstr "Tugas #%s tidak ada!" + +#: scheduler/ipp.c:5342 +#, c-format +msgid "Job %d not found!" +msgstr "Tugas %d tidak ketemu!" + +#: cgi-bin/ipp-var.c:858 +msgid "Job Completed" +msgstr "Tugas Diselesaikan" + +#: cgi-bin/ipp-var.c:856 +msgid "Job Created" +msgstr "Tugas Dibuat" + +#: cgi-bin/ipp-var.c:862 +msgid "Job Options Changed" +msgstr "Perubahan Opsi Tugas" + +#: cgi-bin/ipp-var.c:860 +msgid "Job Stopped" +msgstr "Tugas Dihentikan" + +#: scheduler/ipp.c:9026 +msgid "Job is completed and cannot be changed." +msgstr "Tugas sudah diselesaikan dan tidak bisa diubah." + +#: cgi-bin/jobs.c:192 +msgid "Job operation failed:" +msgstr "Operasi tugas gagal:" + +#: scheduler/ipp.c:9057 scheduler/ipp.c:9074 scheduler/ipp.c:9085 +msgid "Job state cannot be changed." +msgstr "Status tugas tidak bisa diubah." + +#: scheduler/ipp.c:7936 +msgid "Job subscriptions cannot be renewed!" +msgstr "Subkripsi tugas tidak bisa diperbaharui!" + +#: cgi-bin/jobs.c:102 cgi-bin/jobs.c:113 cgi-bin/jobs.c:189 +msgid "Jobs" +msgstr "Tugas" + +#: scheduler/ipp.c:1962 scheduler/ipp.c:5265 +#, c-format +msgid "Language \"%s\" not supported!" +msgstr "Bahasa \"%s\" tidak didukung!" + +#: cups/ppd.c:321 +msgid "Line longer than the maximum allowed (255 characters)" +msgstr "Baris melebihi panjang yang diperbolehkan (255 karakter)" + +#: cgi-bin/admin.c:2019 +msgid "List Available Printers" +msgstr "Daftar Pencetak yang Tersedia" + +#: cups/ppd.c:725 cups/ppd.c:1286 +msgid "Media Size" +msgstr "Ukuran Media" + +#: cups/ppd.c:729 cups/ppd.c:1290 +msgid "Media Source" +msgstr "Sumber Media" + +#: cups/ppd.c:727 cups/ppd.c:1288 +msgid "Media Type" +msgstr "Jenis Media" + +#: backend/ipp.c:1430 +msgid "Media jam!" +msgstr "Media tersangkut!" + +#: backend/ipp.c:1448 +msgid "Media tray almost empty." +msgstr "Baki media hampir kosong." + +#: backend/ipp.c:1450 +msgid "Media tray empty!" +msgstr "Baki media kosong!" + +#: backend/ipp.c:1446 +msgid "Media tray missing!" +msgstr "Baki media hilang!" + +#: backend/ipp.c:1428 +msgid "Media tray needs to be filled." +msgstr "Baki media perlu diisi." + +#: cups/ppd.c:310 +msgid "Memory allocation error" +msgstr "Kesalahan alokasi memori" + +#: cups/ppd.c:311 +msgid "Missing PPD-Adobe-4.x header" +msgstr "Kehilangan tajuk PPD-Adobe-4.x" + +#: cups/ppd.c:320 +msgid "Missing asterisk in column 1" +msgstr "Kehilangan asterik pada kolom 1" + +#: cups/adminutil.c:279 +#, c-format +msgid "Missing double quote on line %d!" +msgstr "Kehilangan tanda kutip pada baris %d!" + +#: cgi-bin/admin.c:1731 cgi-bin/admin.c:1816 cgi-bin/admin.c:2385 +#: cgi-bin/admin.c:2492 cgi-bin/admin.c:2765 cgi-bin/admin.c:3293 +msgid "Missing form variable!" +msgstr "Kehilangan variabel formulir/bentuk!" + +#: scheduler/ipp.c:5931 +msgid "Missing notify-subscription-ids attribute!" +msgstr "Kehilangan atribut notify-subscription-ids!" + +#: scheduler/ipp.c:2976 +msgid "Missing requesting-user-name attribute!" +msgstr "Kehilangan atribut requesting-user-name!" + +#: scheduler/ipp.c:423 +msgid "Missing required attributes!" +msgstr "Kehilangan atribut yang diperlukan!" + +#: cups/adminutil.c:260 +#, c-format +msgid "Missing value on line %d!" +msgstr "Kehilangan nilai pada baris %d!" + +#: cups/ppd.c:312 +msgid "Missing value string" +msgstr "Kehilangan string nilai" + +#: systemv/lpinfo.c:403 +#, c-format +msgid "" +"Model: name = %s\n" +" natural_language = %s\n" +" make-and-model = %s\n" +" device-id = %s\n" +msgstr "" +"Model: nama = %s\n" +" bahasa_natural = %s\n" +" pembuat-dan-model = %s\n" +" id-perangkat = %s\n" + +#: cgi-bin/admin.c:421 +msgid "Modify Class" +msgstr "Ubah Kelas" + +#: cgi-bin/admin.c:713 +msgid "Modify Printer" +msgstr "Ubah Pencetak" + +#: cgi-bin/ipp-var.c:413 cgi-bin/ipp-var.c:484 +msgid "Move All Jobs" +msgstr "Pindah Semua Tugas" + +#: cgi-bin/ipp-var.c:358 cgi-bin/ipp-var.c:411 cgi-bin/ipp-var.c:482 +msgid "Move Job" +msgstr "Pindah Tugas" + +#: backend/ipp.c:974 +#, c-format +msgid "NOTICE: Print file accepted - job ID %d.\n" +msgstr "CATATAN: Berkas cetak diterima - ID tugas %d.\n" + +#: backend/ipp.c:968 +msgid "NOTICE: Print file accepted - job ID unknown.\n" +msgstr "CATATAN: Berkas cetak diterima - ID tugas tak dikenal.\n" + +#: cups/ppd.c:309 +msgid "NULL PPD file pointer" +msgstr "Penunjuk berkas PPD NULL" + +#: cups/ppd.c:1862 +msgid "No" +msgstr "Tidak" + +#: cups/adminutil.c:795 +msgid "No Windows printer drivers are installed!" +msgstr "Tak ada driver pencetak Windows yang terpasang!" + +#: scheduler/ipp.c:3155 +#, c-format +msgid "No active jobs on %s!" +msgstr "Tak ada tugas yang aktif pada %s!" + +#: scheduler/ipp.c:284 +msgid "No attributes in request!" +msgstr "Tak ada atribut dalam permintaan!" + +#: scheduler/ipp.c:2881 +msgid "No authentication information provided!" +msgstr "Tak ada informasi otentikasi yang tersedia!" + +#: scheduler/ipp.c:5522 +msgid "No default printer" +msgstr "Tak ada pencetak utama" + +#: scheduler/ipp.c:6429 +msgid "No destinations added." +msgstr "Tak ada tujuan yang ditambah." + +#: scheduler/ipp.c:7299 scheduler/ipp.c:8475 +msgid "No file!?!" +msgstr "Tak ada berkas!?!" + +#: scheduler/ipp.c:5160 +msgid "No subscription attributes in request!" +msgstr "Tak ada atribut subskripsi dalam permintaan!" + +#: scheduler/ipp.c:6742 +msgid "No subscriptions found." +msgstr "Tidak ada subskripsi yang ditemukan." + +#: cgi-bin/admin.c:3084 +msgid "None" +msgstr "Nihil" + +#: scheduler/ipp.c:1394 +msgid "Not allowed to print." +msgstr "Tidak diperbolehkan mencetak." + +#: cups/ppd.c:307 +msgid "OK" +msgstr "Oke" + +#: backend/ipp.c:1470 +msgid "OPC almost at end-of-life." +msgstr "OPC nyaris di ujung hayat." + +#: backend/ipp.c:1472 +msgid "OPC at end-of-life!" +msgstr "OPC sudah di ujung hayat!" + +#: cups/ppd.c:315 +msgid "OpenGroup without a CloseGroup first" +msgstr "OpenGroup tanpa CloseGroup lebih dulu" + +#: cups/ppd.c:317 +msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first" +msgstr "OpenUI/JCLOpenUI tanpa CloseUI/JCLCloseUI lebih dulu" + +#: cgi-bin/admin.c:3057 +msgid "Operation Policy" +msgstr "Polis Operasi" + +#: cgi-bin/admin.c:2879 +msgid "Options Installed" +msgstr "Opsi yang Terpasang" + +#: backend/ipp.c:1438 +msgid "Out of toner!" +msgstr "Kehabisan toner!" + +#: cups/ppd.c:731 cups/ppd.c:1292 +msgid "Output Mode" +msgstr "Mode Keluaran" + +#: backend/ipp.c:1454 +msgid "Output bin almost full." +msgstr "Baki keluaran hampir penuh." + +#: backend/ipp.c:1456 +msgid "Output bin full!" +msgstr "Baki keluaran telah penuh!" + +#: systemv/lpstat.c:1311 systemv/lpstat.c:1315 +#, c-format +msgid "Output for printer %s is sent to %s\n" +msgstr "Keluaran untuk pencetak %s dikirim ke %s\n" + +#: systemv/lpstat.c:1305 +#, c-format +msgid "Output for printer %s is sent to remote printer %s on %s\n" +msgstr "Keluaran untuk pencetak %s dikirim ke pencetak jarak jauh %s pada %s\n" + +#: systemv/lpstat.c:1329 systemv/lpstat.c:1333 +#, c-format +msgid "Output for printer %s/%s is sent to %s\n" +msgstr "Keluaran untuk pencetak %s/%s dikirim ke %s\n" + +#: systemv/lpstat.c:1323 +#, c-format +msgid "Output for printer %s/%s is sent to remote printer %s on %s\n" +msgstr "Keluaran untuk pencetak %s/%s dikirim %s pada %s\n" + +#: backend/ipp.c:1452 +msgid "Output tray missing!" +msgstr "Baki keluaran hilang!" + +#: systemv/cupstestdsc.c:404 +msgid "PASS\n" +msgstr "PASS\n" + +#: cgi-bin/admin.c:3078 cgi-bin/admin.c:3098 +msgid "PS Binary Protocol" +msgstr "Protokol Biner PS" + +#: cups/auth.c:150 +#, c-format +msgid "Password for %s on %s? " +msgstr "Sandi untuk %s pada %s? " + +#: systemv/cupsaddsmb.c:246 +#, c-format +msgid "Password for %s required to access %s via SAMBA: " +msgstr "Sandi untuk %s diperlukan untuk mengakses %s via SAMBA: " + +#: cgi-bin/admin.c:3006 +msgid "Policies" +msgstr "Polis" + +#: cups/notify.c:82 +msgid "Print Job:" +msgstr "Tugas Cetak:" + +#: cgi-bin/ipp-var.c:597 +msgid "Print Test Page" +msgstr "Cetak Halaman Tes" + +#: cgi-bin/ipp-var.c:850 +msgid "Printer Added" +msgstr "Pencetak Ditambah" + +#: cgi-bin/ipp-var.c:854 +msgid "Printer Deleted" +msgstr "Pencetak Dihapus" + +#: cgi-bin/printers.c:213 cgi-bin/printers.c:284 +msgid "Printer Maintenance" +msgstr "Perawatan Pencetak" + +#: cgi-bin/ipp-var.c:852 +msgid "Printer Modified" +msgstr "Pencetak Diubah" + +#: cgi-bin/ipp-var.c:848 +msgid "Printer Stopped" +msgstr "Pencetak Dihentikan" + +#: backend/ipp.c:1434 +msgid "Printer off-line." +msgstr "Pencetak terputus." + +#: cups/notify.c:126 +msgid "Printer:" +msgstr "Pencetak:" + +#: cgi-bin/printers.c:161 cgi-bin/printers.c:330 +msgid "Printers" +msgstr "Pencetak" + +#: cgi-bin/admin.c:161 +msgid "Purge Jobs" +msgstr "Membersihkan Tugas" + +#: scheduler/ipp.c:1389 +msgid "Quota limit reached." +msgstr "Batas kuota telah dicapai." + +#: berkeley/lpq.c:508 +msgid "Rank Owner Job File(s) Total Size\n" +msgstr "Urut Tuan Tgs Berkas Ukur Total\n" + +#: berkeley/lpq.c:504 +msgid "Rank Owner Pri Job Files Total Size\n" +msgstr "Urut Tuan Pri Tugas Berkas Ukuran Total\n" + +#: cgi-bin/admin.c:159 +msgid "Reject Jobs" +msgstr "Tolak Tugas" + +#: cups/ppd.c:733 cups/ppd.c:1294 +msgid "Resolution" +msgstr "Resolusi" + +#: cups/adminutil.c:2066 +#, c-format +msgid "Running command: %s %s -N -A %s -c '%s'\n" +msgstr "Menjalankan perintah: %s %s -N -A %s -c '%s'\n" + +#: cgi-bin/ipp-var.c:864 +msgid "Server Restarted" +msgstr "Server Dinyalakan Ulang" + +#: cgi-bin/ipp-var.c:870 +msgid "Server Security Auditing" +msgstr "Audit Sekuritas Server" + +#: cgi-bin/ipp-var.c:866 +msgid "Server Started" +msgstr "Server Dijalankan" + +#: cgi-bin/ipp-var.c:868 +msgid "Server Stopped" +msgstr "Server Dihentikan" + +#: cgi-bin/admin.c:2493 cgi-bin/admin.c:2539 cgi-bin/admin.c:2690 +#: cgi-bin/admin.c:2709 +msgid "Set Allowed Users" +msgstr "Atur Pengguna yang Boleh" + +#: cgi-bin/admin.c:165 +msgid "Set As Default" +msgstr "Atur Sebagai Utama" + +#: cgi-bin/admin.c:2750 +msgid "Set Class Options" +msgstr "Atur Pilihan Kelas" + +#: cgi-bin/admin.c:2750 cgi-bin/admin.c:2849 cgi-bin/admin.c:3125 +msgid "Set Printer Options" +msgstr "Atur Pilihan Pencetak" + +#: cgi-bin/admin.c:3294 cgi-bin/admin.c:3338 cgi-bin/admin.c:3356 +msgid "Set Publishing" +msgstr "Atur Penerbitan" + +#: cgi-bin/admin.c:153 +msgid "Start Class" +msgstr "Memulai Kelas" + +#: cgi-bin/admin.c:149 +msgid "Start Printer" +msgstr "Memulai Pencetak" + +#: cgi-bin/admin.c:2981 +msgid "Starting Banner" +msgstr "Menjalankan Pataka" + +#: cgi-bin/admin.c:155 +msgid "Stop Class" +msgstr "Menghentikan Kelas" + +#: cgi-bin/admin.c:151 +msgid "Stop Printer" +msgstr "Menghentikan Pencetak" + +#: scheduler/ipp.c:6178 +#, c-format +msgid "The PPD file \"%s\" could not be found." +msgstr "Berkas PPD \"%s\" tak bisa ditemukan." + +#: scheduler/ipp.c:6165 +#, c-format +msgid "The PPD file \"%s\" could not be opened: %s" +msgstr "Berkas PPD \"%s\" tak bisa dibuka: %s" + +#: cgi-bin/admin.c:579 +msgid "The class name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)." +msgstr "Nama kelas paling banyak 127 karakter cetak dan tidak mengandung spasi, garis miring (/), atau pun tanda pagar (#)." + +#: scheduler/ipp.c:1989 +msgid "The notify-lease-duration attribute cannot be used with job subscriptions." +msgstr "Atribut notify-lease-duration tidak bisa digunakan bersama subskripsi tugas." + +#: scheduler/ipp.c:1972 scheduler/ipp.c:5275 +#, c-format +msgid "The notify-user-data value is too large (%d > 63 octets)!" +msgstr "Nilai notify-user-data terlalu besar (%d > 63 oktet)!" + +#: cgi-bin/admin.c:783 +msgid "The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)." +msgstr "Nama pencetak paling banyak 127 karakter cetak dan tidak mengandung spasi, garis miring (/), atau tanda pagar (#)." + +#: scheduler/ipp.c:1253 +msgid "The printer or class is not shared!" +msgstr "Pencetak atau kelas tidak dikongsikan!" + +#: scheduler/ipp.c:797 scheduler/ipp.c:1088 scheduler/ipp.c:3012 +#: scheduler/ipp.c:3117 scheduler/ipp.c:4820 scheduler/ipp.c:5119 +#: scheduler/ipp.c:5418 scheduler/ipp.c:5771 scheduler/ipp.c:6361 +#: scheduler/ipp.c:6669 scheduler/ipp.c:6961 scheduler/ipp.c:7005 +#: scheduler/ipp.c:7314 scheduler/ipp.c:7705 scheduler/ipp.c:8805 +#: scheduler/ipp.c:9469 scheduler/ipp.c:9536 scheduler/ipp.c:9794 +msgid "The printer or class was not found." +msgstr "Pencetak atau kelas tidak ditemukan." + +#: scheduler/ipp.c:903 scheduler/ipp.c:2175 +#, c-format +msgid "The printer-uri \"%s\" contains invalid characters." +msgstr "Terdapat karakter tidak sah pada printer-uri \"%s\"." + +#: scheduler/ipp.c:2957 +msgid "The printer-uri attribute is required!" +msgstr "Atribut printer-uri diperlukan!" + +#: scheduler/ipp.c:887 +msgid "The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"." +msgstr "Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/classes/CLASSNAME\"." + +#: scheduler/ipp.c:2159 +msgid "The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"." +msgstr "Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/printers/PRINTERNAME\"." + +#: cgi-bin/admin.c:323 +msgid "The subscription name may not contain spaces, slashes (/), question marks (?), or the pound sign (#)." +msgstr "Nama subskripsi tidak bisa mengandung spasi, garis miring (/), tanda tanya (?), atau tanda pagar (#)." + +#: backend/ipp.c:1436 +msgid "Toner low." +msgstr "Toner lemah." + +#: scheduler/ipp.c:1383 +msgid "Too many active jobs." +msgstr "Terlalu banyak tugas yang aktif." + +#: cgi-bin/admin.c:1587 cgi-bin/admin.c:1600 cgi-bin/admin.c:1624 +msgid "Unable to access cupsd.conf file:" +msgstr "Tak bisa mengakses berkas cupsd.conf:" + +#: cgi-bin/admin.c:378 +msgid "Unable to add RSS subscription:" +msgstr "Tak bisa menambah subskripsi RSS:" + +#: cgi-bin/admin.c:645 +msgid "Unable to add class:" +msgstr "Tak bisa menambah kelas:" + +#: scheduler/ipp.c:1427 +#, c-format +msgid "Unable to add job for destination \"%s\"!" +msgstr "Tak bisa menambah tugas untuk tujuan \"%s\"!" + +#: cgi-bin/admin.c:1202 +msgid "Unable to add printer:" +msgstr "Tak bisa menambah pencetak:" + +#: scheduler/ipp.c:1202 +msgid "Unable to allocate memory for file types!" +msgstr "Tak bisa mengalokasikan memori untuk jenis berkas!" + +#: cgi-bin/admin.c:1298 +msgid "Unable to cancel RSS subscription:" +msgstr "Tak bisa membatalkan subskripsi RSS:" + +#: cgi-bin/admin.c:3339 +msgid "Unable to change printer-is-shared attribute:" +msgstr "Tak bisa mengubah atribut printer-is-shared:" + +#: cgi-bin/admin.c:2423 cgi-bin/admin.c:2691 +msgid "Unable to change printer:" +msgstr "Tak bisa mengubah pencetak:" + +#: cgi-bin/admin.c:1368 cgi-bin/admin.c:1431 +msgid "Unable to change server settings:" +msgstr "Tak bisa mengubah pengaturan server:" + +#: cups/adminutil.c:733 +#, c-format +msgid "Unable to copy 64-bit CUPS printer driver files (%d)!" +msgstr "Tak bisa menyalin berkas driver pencetak CUPS 64-bit (%d)!" + +#: cups/adminutil.c:698 +#, c-format +msgid "Unable to copy 64-bit Windows printer driver files (%d)!" +msgstr "Tak bisa menyalin berkas driver pencetak Windows 64-bit (%d)!" + +#: cups/adminutil.c:529 +#, c-format +msgid "Unable to copy CUPS printer driver files (%d)!" +msgstr "Tak bisa menyalin berkas driver pencetak CUPS (%d)!" + +#: scheduler/ipp.c:2516 +#, c-format +msgid "Unable to copy PPD file - %s!" +msgstr "Tak bisa menyalin berkas PPD - %s!" + +#: scheduler/ipp.c:2572 +msgid "Unable to copy PPD file!" +msgstr "Tak bisa menyalin berkas PPD!" + +#: cups/adminutil.c:494 +#, c-format +msgid "Unable to copy Windows 2000 printer driver files (%d)!" +msgstr "Tak bisa menyalin berkas driver pencetak Windows 2000 (%d)!" + +#: cups/adminutil.c:617 +#, c-format +msgid "Unable to copy Windows 9x printer driver files (%d)!" +msgstr "Tak bisa menyalin berkas driver pencetak Windows 9x (%d)!" + +#: scheduler/ipp.c:2491 +#, c-format +msgid "Unable to copy interface script - %s!" +msgstr "Tak bisa menyalin skrip antarmuka - %s!" + +#: cgi-bin/admin.c:1478 cgi-bin/admin.c:1490 cgi-bin/printers.c:214 +msgid "Unable to create temporary file:" +msgstr "Tak bisa membuat berkas temporer:" + +#: cgi-bin/admin.c:1778 +msgid "Unable to delete class:" +msgstr "Tak bisa menghapus kelas:" + +#: cgi-bin/admin.c:1863 +msgid "Unable to delete printer:" +msgstr "Tak bisa menghapus pencetak:" + +#: cgi-bin/admin.c:1602 +msgid "Unable to edit cupsd.conf files larger than 1MB!" +msgstr "Tak bisa menyunting berkas cupsd.conf lebih dari 1MB!" + +#: cgi-bin/ipp-var.c:359 +msgid "Unable to find destination for job!" +msgstr "Tak bisa menemukan tujuan untuk tugas!" + +#: cgi-bin/classes.c:350 +msgid "Unable to get class list:" +msgstr "Tak bisa mendapatkan daftar kelas:" + +#: cgi-bin/classes.c:449 +msgid "Unable to get class status:" +msgstr "Tak bisa mendapatkan status kelas:" + +#: cgi-bin/admin.c:1112 +msgid "Unable to get list of printer drivers:" +msgstr "Tak bisa mendapatkan daftar driver pencetak:" + +#: cgi-bin/admin.c:2547 +msgid "Unable to get printer attributes:" +msgstr "Tak bisa mendapatkan atribut pencetak:" + +#: cgi-bin/printers.c:514 +msgid "Unable to get printer list:" +msgstr "Tak bisa mendapatkan daftar pencetak:" + +#: cgi-bin/printers.c:624 +msgid "Unable to get printer status:" +msgstr "Tak bisa mendapatkan status pencetak:" + +#: cups/adminutil.c:572 cups/adminutil.c:776 +#, c-format +msgid "Unable to install Windows 2000 printer driver files (%d)!" +msgstr "Tak bisa memasang berkas driver pencetak Windows 2000 (%d)!" + +#: cups/adminutil.c:646 +#, c-format +msgid "Unable to install Windows 9x printer driver files (%d)!" +msgstr "Tak bisa memasang berkas driver pencetak Windows 9x (%d)!" + +#: cgi-bin/admin.c:644 +msgid "Unable to modify class:" +msgstr "Tak bisa mengubah kelas:" + +#: cgi-bin/admin.c:1201 +msgid "Unable to modify printer:" +msgstr "Tak bisa mengubah pencetak" + +#: cgi-bin/ipp-var.c:489 +msgid "Unable to move job" +msgstr "Tak bisa memindahkan tugas" + +#: cgi-bin/ipp-var.c:491 +msgid "Unable to move jobs" +msgstr "Tak bisa memindahkan tugas" + +#: cups/ppd.c:308 +msgid "Unable to open PPD file" +msgstr "Tak bisa membuka berkas PPD" + +#: cgi-bin/admin.c:2790 +msgid "Unable to open PPD file:" +msgstr "Tak bisa membuka berkas PPD:" + +#: cgi-bin/admin.c:2266 +msgid "Unable to open cupsd.conf file:" +msgstr "Tak bisa membuka berkas cupsd.conf:" + +#: cgi-bin/ipp-var.c:600 +msgid "Unable to print test page:" +msgstr "Tak bisa mencetak halaman tes:" + +#: cups/adminutil.c:2097 +#, c-format +msgid "Unable to run \"%s\": %s\n" +msgstr "Tak bisa menjalankan \"%s\": %s\n" + +#: cgi-bin/printers.c:287 +msgid "Unable to send maintenance job:" +msgstr "Tak bisa mengirim tugas perawatan:" + +#: cups/adminutil.c:825 +#, c-format +msgid "Unable to set Windows printer driver (%d)!" +msgstr "Tak bisa mengeset driver pencetak Windows (%d)!" + +#: cgi-bin/admin.c:3240 +msgid "Unable to set options:" +msgstr "Tak bisa mengeset opsi:" + +#: cgi-bin/admin.c:1540 +msgid "Unable to upload cupsd.conf file:" +msgstr "Tak bisa mengunggah berkas cupsd.conf:" + +#: cups/ppd.c:332 +msgid "Unknown" +msgstr "Tak dikenal" + +#: backend/ipp.c:1481 +#, c-format +msgid "Unknown printer error (%s)!" +msgstr "Kesalahan pencetak tak dikenal (%s)!" + +#: scheduler/ipp.c:9342 +#, c-format +msgid "Unknown printer-error-policy \"%s\"." +msgstr "printer-error-policy \"%s\" tak dikenal." + +#: scheduler/ipp.c:9327 +#, c-format +msgid "Unknown printer-op-policy \"%s\"." +msgstr "printer-op-policy \"%s\" tak dikenal." + +#: scheduler/ipp.c:7280 scheduler/ipp.c:8456 +#, c-format +msgid "Unsupported compression \"%s\"!" +msgstr "Kompresi \"%s\" tak didukung!" + +#: scheduler/ipp.c:9747 +#, c-format +msgid "Unsupported compression attribute %s!" +msgstr "Atribut kompresi %s tak didukung!" + +#: scheduler/ipp.c:9775 +#, c-format +msgid "Unsupported format \"%s\"!" +msgstr "Format \"%s\" tak didukung!" + +#: scheduler/ipp.c:1315 scheduler/ipp.c:8588 +#, c-format +msgid "Unsupported format '%s'!" +msgstr "Format '%s' tak didukung!" + +#: scheduler/ipp.c:7411 scheduler/ipp.c:8571 +#, c-format +msgid "Unsupported format '%s/%s'!" +msgstr "Format '%s/%s' tak didukung!" + +#: systemv/lpadmin.c:805 +msgid "" +"Usage:\n" +"\n" +" lpadmin [-h server] -d destination\n" +" lpadmin [-h server] -x destination\n" +" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n" +" [-r remove-class] [-v device] [-D description]\n" +" [-P ppd-file] [-o name=value]\n" +" [-u allow:user,user] [-u deny:user,user]\n" +"\n" +msgstr "" +"Penggunaan:\n" +"\n" +" lpadmin [-h server] -d tujuan\n" +" lpadmin [-h server] -x tujuan\n" +" lpadmin [-h server] -p pencetak [-c tambah-kelas] [-i antarmuka] [-m model]\n" +" [-r buang-kelas] [-v perangkat] [-D deskripsi]\n" +" [-P berkas-ppd] [-o nama=nilai]\n" +" [-u allow:pengguna,pengguna] [-u deny:pengguna,pengguna]\n" +"\n" + +#: backend/ipp.c:201 backend/lpd.c:189 backend/parallel.c:125 +#: backend/scsi.c:156 backend/serial.c:164 backend/socket.c:125 +#: backend/usb.c:187 filter/hpgl-main.c:148 filter/imagetops.c:115 +#: filter/imagetoraster.c:208 filter/pstops.c:235 filter/rastertoepson.c:1024 +#: filter/rastertohp.c:757 filter/rastertolabel.c:1171 filter/textcommon.c:518 +#, c-format +msgid "Usage: %s job-id user title copies options [file]\n" +msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi [berkas]\n" + +#: filter/gziptoany.c:53 +#, c-format +msgid "Usage: %s job-id user title copies options file\n" +msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi berkas\n" + +#: scheduler/cupsfilter.c:964 +msgid "" +"Usage: convert [ options ]\n" +"\n" +"Options:\n" +"\n" +" -f filename Set file to be converted (otherwise stdin)\n" +" -o filename Set file to be generated (otherwise stdout)\n" +" -i mime/type Set input MIME type (otherwise auto-typed)\n" +" -j mime/type Set output MIME type (otherwise application/pdf)\n" +" -P filename.ppd Set PPD file\n" +" -a 'name=value ...' Set option(s)\n" +" -U username Set username for job\n" +" -J title Set title\n" +" -c copies Set number of copies\n" +" -u Remove the PPD file when finished\n" +" -D Remove the input file when finished\n" +msgstr "" +"Penggunaan: convert [ opsi ]\n" +"\n" +"Opsi:\n" +"\n" +" -f namaberkas Mengeset berkas untuk dikonversi (sebaliknya stdin)\n" +" -o namaberkas Mengeset berkas untuk digenerasi (sebaliknya stdout)\n" +" -i mime/jenis Mengeset jenis MIME masukan (sebaliknya auto-typed)\n" +" -j mime/jenis Mengeset jenis MIME keluaran (sebaliknya application/pdf)\n" +" -P namaberkas.ppd Mengeset berkas PPD\n" +" -a 'nama=nilai ...' Mengeset opsi\n" +" -U namapengguna Mengeset nama pengguna untuk tugas\n" +" -J judul Mengeset judul\n" +" -c rangkap Mengeset jumlah rangkap\n" +" -u Membuang berkas PPD setelah usai\n" +" -D Membuang berkas masukan setelah usai\n" + +#: systemv/cupsaddsmb.c:276 +msgid "" +"Usage: cupsaddsmb [options] printer1 ... printerN\n" +" cupsaddsmb [options] -a\n" +"\n" +"Options:\n" +" -E Encrypt the connection to the server\n" +" -H samba-server Use the named SAMBA server\n" +" -U samba-user Authenticate using the named SAMBA user\n" +" -a Export all printers\n" +" -h cups-server Use the named CUPS server\n" +" -v Be verbose (show commands)\n" +msgstr "" +"Penggunaan: cupsaddsmb [opsi] pencetak1 ... pencetakN\n" +" cupsaddsmb [opsi] -a\n" +"\n" +"Opsi:\n" +" -E Mengenkripsi koneksi ke server\n" +" -H samba-server Menggunakan server SAMBA yang diberikan\n" +" -U samba-user Otentikasi menggunakan nama pengguna SAMBA yang diberikan\n" +" -a Mengekspor semua pencetak\n" +" -h cups-server Menggunakan server CUPS yang ditentukan\n" +" -v Menjadi verbose (menampilkan perintah)\n" + +#: systemv/cupsctl.c:195 +msgid "" +"Usage: cupsctl [options] [param=value ... paramN=valueN]\n" +"\n" +"Options:\n" +"\n" +" -E Enable encryption\n" +" -U username Specify username\n" +" -h server[:port] Specify server address\n" +"\n" +" --[no-]debug-logging Turn debug logging on/off\n" +" --[no-]remote-admin Turn remote administration on/off\n" +" --[no-]remote-any Allow/prevent access from the Internet\n" +" --[no-]remote-printers Show/hide remote printers\n" +" --[no-]share-printers Turn printer sharing on/off\n" +" --[no-]user-cancel-any Allow/prevent users to cancel any job\n" +msgstr "" +"Penggunaan: cupsctl [opsi] [param=nilai ... paramN=nilaiN]\n" +"\n" +"Opsi:\n" +"\n" +" -E Mengaktifkan enkripsi\n" +" -U namapengguna Menentukan nama pengguna\n" +" -h server[:portal Menentukan alamat server\n" +"\n" +" --[no-]debug-logging Mengaktifkan/tidak pencatat debug\n" +" --[no-]remote-admin Mengaktifkan/tidak administrasi jarak jauh\n" +" --[no-]remote-any Biarkan/cegah akses dari Internet\n" +" --[no-]remote-printers Tampilkan/sembunyikan pencetak jarak jauh\n" +" --[no-]share-printers Mengaktifkan/tidak pencetak yang dikongsi\n" +" --[no-]user-cancel-any Biarkan/cegah pengguna biasa membatalkan tugas\n" + +#: scheduler/main.c:1806 +msgid "" +"Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n" +"\n" +"-c config-file Load alternate configuration file\n" +"-f Run in the foreground\n" +"-F Run in the foreground but detach\n" +"-h Show this usage message\n" +"-l Run cupsd from launchd(8)\n" +msgstr "" +"Penggunaan: cupsd [-c berkas-konfigurasi] [-f] [-F] [-h] [-l]\n" +"\n" +"-c berkas-konfigurasi Memuat berkas konfigurasi alternatif\n" +"-f Berjalan pada latar depan\n" +"-F Berjalan pada latar depan tapi terpisah\n" +"-h Tampilkan pesan ini\n" +"-l Menjalankan cupsd dari launchd(8)\n" + +#: scheduler/cupsfilter.c:953 +msgid "" +"Usage: cupsfilter -m mime/type [ options ] filename\n" +"\n" +"Options:\n" +"\n" +" -c cupsd.conf Set cupsd.conf file to use\n" +" -n copies Set number of copies\n" +" -o name=value Set option(s)\n" +" -p filename.ppd Set PPD file\n" +" -t title Set title\n" +msgstr "" +"Penggunaan: cupsfilter -m mime/jenis [ opsi ] namaberkas\n" +"\n" +"Opsi:\n" +"\n" +" -c cupsd.conf Mengeset berkas cupsd.conf untuk digunakan\n" +" -n salinan Mengeset banyaknya salinan\n" +" -o nama=nilai Mengeset opsi\n" +" -p namaberkas.ppd Mengeset berkas PPD\n" +" -t judul Mengeset judul\n" + +#: systemv/cupstestdsc.c:431 +msgid "" +"Usage: cupstestdsc [options] filename.ps [... filename.ps]\n" +" cupstestdsc [options] -\n" +"\n" +"Options:\n" +"\n" +" -h Show program usage\n" +"\n" +" Note: this program only validates the DSC comments, not the PostScript itself.\n" +msgstr "" +"Penggunaan: cupstestdsc [opsi] namaberkas.ps [... namaberkas.ps]\n" +" cupstestdsc [opsi] -\n" +"\n" +"Opsi:\n" +"\n" +" -h Menampilkan cara guna program\n" +"\n" +" Catatan: program ini hanya memvalidasi komentar DSC, bukan PostScript itu sendiri.\n" + +#: systemv/cupstestppd.c:2409 +msgid "" +"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n" +" program | cupstestppd [options] -\n" +"\n" +"Options:\n" +"\n" +" -R root-directory Set alternate root\n" +" -W {all,none,constraints,defaults,filters,translations}\n" +" Issue warnings instead of errors\n" +" -q Run silently\n" +" -r Use 'relaxed' open mode\n" +" -v Be slightly verbose\n" +" -vv Be very verbose\n" +msgstr "" +"Penggunaan: cupstestppd [opsi] namaberkas1.ppd[.gz] [... namaberkasN.ppd[.gz]]\n" +" program | cupstestppd [opsi] -\n" +"\n" +"Opsi:\n" +"\n" +" -R direktori-root Mengeset root alternatif\n" +" -W {all,none,constraints,defaults,filters,translations}\n" +" Kabar peringatan ketimbang kesalahan\n" +" -q Berjalan sangat senyap\n" +" -r Menggunakan mode terbuka 'relaxed'\n" +" -v Menjadi tidak begitu verbose\n" +" -vv Menjadi sangat verbose\n" + +#: systemv/lpmove.c:138 +msgid "Usage: lpmove job/src dest\n" +msgstr "Penggunaan: lpmove tugas/sumber tujuan\n" + +#: systemv/lpoptions.c:479 +msgid "" +"Usage: lpoptions [-h server] [-E] -d printer\n" +" lpoptions [-h server] [-E] [-p printer] -l\n" +" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n" +" lpoptions [-h server] [-E] -x printer\n" +msgstr "" +"Penggunaan: lpoptions [-h server] [-E] -d pencetak\n" +" lpoptions [-h server] [-E] [-p pencetak] -l\n" +" lpoptions [-h server] [-E] -p pencetak -o opsi[=nilai] ...\n" +" lpoptions [-h server] [-E] -x pencetak\n" + +#: systemv/lppasswd.c:493 +msgid "Usage: lppasswd [-g groupname]\n" +msgstr "Penggunaan: lppasswd [-g namakelompok]\n" + +#: systemv/lppasswd.c:496 +msgid "" +"Usage: lppasswd [-g groupname] [username]\n" +" lppasswd [-g groupname] -a [username]\n" +" lppasswd [-g groupname] -x [username]\n" +msgstr "" +"Penggunaan: lppasswd [-g namakelompok] [namapengguna]\n" +" lppasswd [-g namakelompok] -a [namapengguna]\n" +" lppasswd [-g namakelompok] -x [namapengguna]\n" + +#: berkeley/lpq.c:663 +msgid "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n" +msgstr "Penggunaan: lpq [-P tujuan] [-U namapengguna] [-h namahost[:portal]] [-l] [+interval]\n" + +#: backend/snmp.c:317 +msgid "Usage: snmp [host-or-ip-address]\n" +msgstr "Penggunaan: snmp [host-atau-alamat-ip]\n" + +#: backend/usb-darwin.c:1606 +#, c-format +msgid "WARNING: Boolean expected for waiteof option \"%s\"\n" +msgstr "PERINGATAN: Diharapkan boolean untuk opsi waiteof \"%s\"\n" + +#: backend/usb-darwin.c:476 +msgid "WARNING: Couldn't create read channel\n" +msgstr "PERINGATAN: Tak akan membuat kanal!\n" + +#: backend/usb-darwin.c:459 +msgid "WARNING: Couldn't create side channel\n" +msgstr "PERINGATAN: Tak akan membuat kanal sisi!\n" + +#: backend/pap.c:1283 backend/parallel.c:616 backend/serial.c:1250 +#: backend/socket.c:441 backend/usb-unix.c:565 +msgid "WARNING: Failed to read side-channel request!\n" +msgstr "PERINGATAN: Gagal membaca permintaan side-channel (kanal sisi)!\n" + +#: filter/pstops.c:2145 +#, c-format +msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n" +msgstr "PERINGATAN: Opsi \"%s\" tidak akan disertakan via IncludeFeature!\n" + +#: backend/lpd.c:589 +#, c-format +msgid "WARNING: Remote host did not respond with command status byte after %d seconds!\n" +msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita status perintah usai %d detik!\n" + +#: backend/lpd.c:982 backend/lpd.c:1111 +#, c-format +msgid "WARNING: Remote host did not respond with control status byte after %d seconds!\n" +msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita kontrol status usai %d detik!\n" + +#: backend/lpd.c:1067 +#, c-format +msgid "WARNING: Remote host did not respond with data status byte after %d seconds!\n" +msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita status data usai %d detik!\n" + +#: backend/scsi-irix.c:205 backend/scsi-linux.c:224 +#, c-format +msgid "WARNING: SCSI command timed out (%d); retrying...\n" +msgstr "PERINGATAN: Perintah SCSI kehabisan waktu (%d); mencoba ulang...\n" + +#: filter/pstops.c:1026 +msgid "WARNING: This document does not conform to the Adobe Document Structuring Conventions and may not print correctly!\n" +msgstr "PERINGATAN: Dokumen ini tidak sesuai dengan Adobe Document Structuring Conventions dan mungkin tidak tercetak dengan benar!\n" + +#: filter/pstops.c:2152 +#, c-format +msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n" +msgstr "PERINGATAN: Pilihan \"%s\" tak dikenal untuk opsi \"%s\"!\n" + +#: filter/pstops.c:2138 +#, c-format +msgid "WARNING: Unknown option \"%s\"!\n" +msgstr "PERINGATAN: Opsi \"%s\" tak dikenal!\n" + +#: backend/serial.c:373 +#, c-format +msgid "WARNING: Unsupported baud rate %s!\n" +msgstr "PERINGATAN: Tak mendukung baud rate %s!\n" + +#: backend/ipp.c:534 backend/ipp.c:647 backend/lpd.c:820 backend/socket.c:302 +#, c-format +msgid "WARNING: recoverable: Network host '%s' is busy; will retry in %d seconds...\n" +msgstr "PERINGATAN: pemulihan: Host jaringan '%s' sibuk; akan dicoba ulang dalam %d detik...\n" + +#: cups/adminutil.c:800 +msgid "Warning, no Windows 2000 printer drivers are installed!" +msgstr "Peringatan, tak ada driver pencetak Windows 2000 yang terpasang!" + +#: cups/ppd.c:1860 +msgid "Yes" +msgstr "Ya" + +#: scheduler/client.c:2284 +#, c-format +msgid "You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>." +msgstr "Anda harus mengakses halaman ini melalui URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>." + +#: cups/notify.c:102 +msgid "aborted" +msgstr "digagalkan" + +#: cups/notify.c:99 +msgid "canceled" +msgstr "dibatalkan" + +#: cups/notify.c:105 +msgid "completed" +msgstr "diselesaikan" + +#: scheduler/cupsfilter.c:300 +msgid "convert: Use the -f option to specify a file to convert.\n" +msgstr "konversi: Gunakan opsi -f untuk menentukan berkas yang hendak dikonversi.\n" + +#: scheduler/ipp.c:5591 +msgid "cups-deviced failed to execute." +msgstr "cups-deviced gagal dieksekusi." + +#: scheduler/ipp.c:6100 scheduler/ipp.c:6328 +msgid "cups-driverd failed to execute." +msgstr "cups-driverd gagal dieksekusi." + +#: systemv/cupsaddsmb.c:226 +#, c-format +msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n" +msgstr "cupsaddsmb: Tak ada berkas PPD untuk pencetak \"%s\" - %s\n" + +#: systemv/cupsctl.c:189 +#, c-format +msgid "cupsctl: Unknown option \"%s\"!\n" +msgstr "cupsctl: Opsi tak dikenal \"%s\"!\n" + +#: systemv/cupsctl.c:191 +#, c-format +msgid "cupsctl: Unknown option \"-%c\"!\n" +msgstr "cupsctl: Opsi tak dikenal \"-%c\"!\n" + +#: scheduler/main.c:178 +msgid "cupsd: Expected config filename after \"-c\" option!\n" +msgstr "cupsd: Diharapkan nama berkas konfigurasi usai opsi \"-c\"!\n" + +#: scheduler/main.c:253 +#, c-format +msgid "cupsd: Unknown argument \"%s\" - aborting!\n" +msgstr "cupsd: Argumen \"%s\" tak dikenal - digagalkan!\n" + +#: scheduler/main.c:246 +#, c-format +msgid "cupsd: Unknown option \"%c\" - aborting!\n" +msgstr "cupsd: Opsi \"%c\" tak dikenal- digagalkan!\n" + +#: scheduler/main.c:233 +msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n" +msgstr "cupsd: dukungan launchd(8) tidak dikompilasi serta, menjalankan dalam mode normal.\n" + +#: scheduler/cupsfilter.c:308 +msgid "cupsfilter: Only one filename can be specified!\n" +msgstr "cupsfilter: Hanya satu nama berkas yang bisa ditentukan!\n" + +#: systemv/cupstestppd.c:201 +msgid "cupstestppd: The -q option is incompatible with the -v option.\n" +msgstr "cupstestppd: Opsi -q tidak cocok dengan opsi -v.\n" + +#: systemv/cupstestppd.c:217 +msgid "cupstestppd: The -v option is incompatible with the -q option.\n" +msgstr "cupstestppd: Opsi -v tidak cocok dengan opsi -q.\n" + +#: systemv/lpstat.c:1351 systemv/lpstat.c:1354 systemv/lpstat.c:1357 +#, c-format +msgid "device for %s/%s: %s\n" +msgstr "perangkat untuk %s/%s: %s\n" + +#: systemv/lpstat.c:1338 systemv/lpstat.c:1341 systemv/lpstat.c:1344 +#, c-format +msgid "device for %s: %s\n" +msgstr "perangkat untuk %s: %s\n" + +#: cups/notify.c:90 +msgid "held" +msgstr "ditahan" + +#: berkeley/lpc.c:214 +msgid "help\t\tget help on commands\n" +msgstr "bantuan\t\tmemperoleh bantuan dari baris perintah\n" + +#: cups/notify.c:131 +msgid "idle" +msgstr "menganggur" + +#: scheduler/ipp.c:6950 +msgid "job-printer-uri attribute missing!" +msgstr "Atribut job-printer-uri hilang!" + +#: systemv/lpadmin.c:141 systemv/lpadmin.c:453 +msgid "lpadmin: Class name can only contain printable characters!\n" +msgstr "lpadmin: Nama kelas hanya boleh diisi karakter cetak!\n" + +#: systemv/lpadmin.c:750 +msgid "lpadmin: Expected PPD after '-P' option!\n" +msgstr "lpadmin: Diharapkan PPD usai opsi '-P'!\n" + +#: systemv/lpadmin.c:491 +msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n" +msgstr "lpadmin: Diharapkan allow/deny:daftarpengguna usai opsi '-u'!\n" + +#: systemv/lpadmin.c:442 +msgid "lpadmin: Expected class after '-r' option!\n" +msgstr "lpadmin: Diharapkan kelas usai opsi '-r'!\n" + +#: systemv/lpadmin.c:130 +msgid "lpadmin: Expected class name after '-c' option!\n" +msgstr "lpadmin: Diharapkan nama kelas usai opsi '-c'!\n" + +#: systemv/lpadmin.c:643 +msgid "lpadmin: Expected description after '-D' option!\n" +msgstr "lpadmin: Diharapkan deskripsi usai opsi '-D'!\n" + +#: systemv/lpadmin.c:550 +msgid "lpadmin: Expected device URI after '-v' option!\n" +msgstr "lpadmin: Diharapkan URI perangkat usai opsi '-v'!\n" + +#: systemv/lpadmin.c:659 +msgid "lpadmin: Expected file type(s) after '-I' option!\n" +msgstr "lpadmin: Diharapkan jenis berkas usai opsi '-I'!\n" + +#: systemv/lpadmin.c:212 +msgid "lpadmin: Expected hostname after '-h' option!\n" +msgstr "lpadmin: Diharapkan nama host usai opsi '-h'!\n" + +#: systemv/lpadmin.c:257 +msgid "lpadmin: Expected interface after '-i' option!\n" +msgstr "lpadmin: Diharapkan antarmuka usai opsi '-i'!\n" + +#: systemv/lpadmin.c:704 +msgid "lpadmin: Expected location after '-L' option!\n" +msgstr "lpadmin: Diharapkan lokasi usai opsi '-L'!\n" + +#: systemv/lpadmin.c:338 +msgid "lpadmin: Expected model after '-m' option!\n" +msgstr "lpadmin: Diharapkan model usai opsi '-m'!\n" + +#: systemv/lpadmin.c:358 +msgid "lpadmin: Expected name=value after '-o' option!\n" +msgstr "lpadmin: Diharapkan nama=nilai usai opsi '-o'!\n" + +#: systemv/lpadmin.c:391 +msgid "lpadmin: Expected printer after '-p' option!\n" +msgstr "lpadmin: Diharapkan pencetak usai opsi '-p'!\n" + +#: systemv/lpadmin.c:174 +msgid "lpadmin: Expected printer name after '-d' option!\n" +msgstr "lpadmin: Diharapkan nama pencetak usai opsi '-d'!\n" + +#: systemv/lpadmin.c:584 +msgid "lpadmin: Expected printer or class after '-x' option!\n" +msgstr "lpadmin: Diharapkan pencetak atau kelas usai opsi '-x'!\n" + +#: systemv/lpadmin.c:1127 +msgid "lpadmin: No member names were seen!\n" +msgstr "lpadmin: Tak ada nama anggota yang terlihat!\n" + +#: systemv/lpadmin.c:893 +#, c-format +msgid "lpadmin: Printer %s is already a member of class %s.\n" +msgstr "lpadmin: Pencetak %s sudah menjadi anggota kelas %s.\n" + +#: systemv/lpadmin.c:1141 +#, c-format +msgid "lpadmin: Printer %s is not a member of class %s.\n" +msgstr "lpadmin: Pencetak %s bukanlah anggota kelas %s.\n" + +#: systemv/lpadmin.c:185 systemv/lpadmin.c:402 systemv/lpadmin.c:595 +msgid "lpadmin: Printer name can only contain printable characters!\n" +msgstr "lpadmin: Nama pencetak hanya bisa mengandung karakter cetak!\n" + +#: systemv/lpadmin.c:115 +msgid "" +"lpadmin: Unable to add a printer to the class:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa menambah pencetak ke kelas:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:106 systemv/lpadmin.c:159 systemv/lpadmin.c:230 +#: systemv/lpadmin.c:291 systemv/lpadmin.c:310 systemv/lpadmin.c:376 +#: systemv/lpadmin.c:417 systemv/lpadmin.c:523 systemv/lpadmin.c:569 +#: systemv/lpadmin.c:615 systemv/lpadmin.c:677 systemv/lpadmin.c:723 +#: systemv/lpadmin.c:784 +#, c-format +msgid "lpadmin: Unable to connect to server: %s\n" +msgstr "lpadmin: Tak bisa terkoneksi ke server: %s\n" + +#: systemv/lpadmin.c:1843 +#, c-format +msgid "lpadmin: Unable to create temporary file - %s\n" +msgstr "lpadmin: Tak bisa membuat berkas temporer - %s\n" + +#: systemv/lpadmin.c:1452 +#, c-format +msgid "lpadmin: Unable to create temporary file: %s\n" +msgstr "lpadmin: Tak bisa membuat berkas temporer: %s\n" + +#: systemv/lpadmin.c:1853 +#, c-format +msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n" +msgstr "lpadmin: Tak bisa membuka berkas PPD \"%s\" - %s\n" + +#: systemv/lpadmin.c:1460 +#, c-format +msgid "lpadmin: Unable to open file \"%s\": %s\n" +msgstr "lpadmin: Tak bisa membuka berkas \"%s\": %s\n" + +#: systemv/lpadmin.c:426 +msgid "" +"lpadmin: Unable to remove a printer from the class:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa membuang pencetak dari kelas:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:732 +msgid "" +"lpadmin: Unable to set the PPD file:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset berkas PPD:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:532 +msgid "" +"lpadmin: Unable to set the device URI:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset URI perangkat:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:319 +msgid "" +"lpadmin: Unable to set the interface script or PPD file:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset skrip antarmuka atau berkas PPD:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:239 +msgid "" +"lpadmin: Unable to set the interface script:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset skrip antarmuka:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:624 +msgid "" +"lpadmin: Unable to set the printer description:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset deskripsi pencetak:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:686 +msgid "" +"lpadmin: Unable to set the printer location:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset lokasi pencetak:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:793 +msgid "" +"lpadmin: Unable to set the printer options:\n" +" You must specify a printer name first!\n" +msgstr "" +"lpadmin: Tak bisa mengeset opsi pencetak:\n" +" Anda harus menentukan nama pencetak lebih dulu!\n" + +#: systemv/lpadmin.c:508 +#, c-format +msgid "lpadmin: Unknown allow/deny option \"%s\"!\n" +msgstr "lpadmin: Opsi boleh/larang tak dikenal \"%s\"!\n" + +#: systemv/lpadmin.c:766 +#, c-format +msgid "lpadmin: Unknown argument '%s'!\n" +msgstr "lpadmin: Argumen tak dikenal '%s'!\n" + +#: systemv/lpadmin.c:761 +#, c-format +msgid "lpadmin: Unknown option '%c'!\n" +msgstr "lpadmin: Pilihan tak dikenal '%c'!\n" + +#: systemv/lpadmin.c:665 +msgid "lpadmin: Warning - content type list ignored!\n" +msgstr "lpadmin: Peringatan - jenis isi diabaikan!\n" + +#: berkeley/lpc.c:81 berkeley/lpc.c:109 berkeley/lpc.c:145 +msgid "lpc> " +msgstr "lpc> " + +#: systemv/lpinfo.c:91 systemv/lpinfo.c:110 +#, c-format +msgid "lpinfo: Unable to connect to server: %s\n" +msgstr "lpinfo: Tak bisa terkoneksi ke server: %s\n" + +#: systemv/lpinfo.c:151 +#, c-format +msgid "lpinfo: Unknown argument '%s'!\n" +msgstr "lpinfo: Argumen tak dikenal '%s'!\n" + +#: systemv/lpinfo.c:145 +#, c-format +msgid "lpinfo: Unknown option '%c'!\n" +msgstr "lpinfo: Pilihan tak dikenal '%c'!\n" + +#: systemv/lpmove.c:149 +#, c-format +msgid "lpmove: Unable to connect to server: %s\n" +msgstr "lpmove: Tak bisa terkoneksi ke server: %s\n" + +#: systemv/lpmove.c:131 +#, c-format +msgid "lpmove: Unknown argument '%s'!\n" +msgstr "lpmove: Argumen tak dikenal '%s'!\n" + +#: systemv/lpmove.c:112 +#, c-format +msgid "lpmove: Unknown option '%c'!\n" +msgstr "lpmove: Pilihan tak dikenal '%c'!\n" + +#: systemv/lpoptions.c:152 systemv/lpoptions.c:170 systemv/lpoptions.c:246 +msgid "lpoptions: No printers!?!\n" +msgstr "lpoptions: Tak ada pencetak!?!\n" + +#: systemv/lpoptions.c:221 +#, c-format +msgid "lpoptions: Unable to add printer or instance: %s\n" +msgstr "lpoptions: Tak bisa menambah pencetak: %s\n" + +#: systemv/lpoptions.c:446 +#, c-format +msgid "lpoptions: Unable to get PPD file for %s: %s\n" +msgstr "lpoptions: Tak bisa mendapatkan berkas PPD untuk %s: %s\n" + +#: systemv/lpoptions.c:455 +#, c-format +msgid "lpoptions: Unable to open PPD file for %s!\n" +msgstr "lpoptions: Tak bisa membuka berkas PPD untuk %s!\n" + +#: systemv/lpoptions.c:102 +msgid "lpoptions: Unknown printer or class!\n" +msgstr "lpoptions: Pencetak atau kelas tak dikenal!\n" + +#: systemv/lppasswd.c:185 +msgid "lppasswd: Only root can add or delete passwords!\n" +msgstr "lppasswd: Hanya root yang bisa menambah atau menghapus sandi!\n" + +#: systemv/lppasswd.c:314 +msgid "lppasswd: Password file busy!\n" +msgstr "lppasswd: Berkas sandi sedang sibuk!\n" + +#: systemv/lppasswd.c:447 +msgid "lppasswd: Password file not updated!\n" +msgstr "lppasswd: Berkas sandi tidak diperbaharui!\n" + +#: systemv/lppasswd.c:414 +msgid "lppasswd: Sorry, password doesn't match!\n" +msgstr "lppasswd: Maaf, sandi tidak cocok!\n" + +#: systemv/lppasswd.c:264 +msgid "" +"lppasswd: Sorry, password rejected.\n" +"Your password must be at least 6 characters long, cannot contain\n" +"your username, and must contain at least one letter and number.\n" +msgstr "" +"lppasswd: Maaf, sandi ditolak.\n" +"Sandi Anda harus setidaknya 6 karakter, tidak memuat\n" +"nama pengguna Anda, dan harusnya memiliki satu huruf serta angka.\n" + +#: systemv/lppasswd.c:240 +msgid "lppasswd: Sorry, passwords don't match!\n" +msgstr "lppasswd: Maaf, sandi tidak cocok!\n" + +#: systemv/lppasswd.c:211 systemv/lppasswd.c:229 +#, c-format +msgid "lppasswd: Unable to copy password string: %s\n" +msgstr "lppasswd: Tidak bisa menyalin string sandi: %s\n" + +#: systemv/lppasswd.c:317 systemv/lppasswd.c:326 systemv/lppasswd.c:344 +#, c-format +msgid "lppasswd: Unable to open password file: %s\n" +msgstr "lppasswd: Tak bisa membuka berkas sandi: %s\n" + +#: systemv/lppasswd.c:379 systemv/lppasswd.c:392 systemv/lppasswd.c:424 +#, c-format +msgid "lppasswd: Unable to write to password file: %s\n" +msgstr "lppasswd: Tak bisa menulis ke berkas sandi: %s\n" + +#: systemv/lppasswd.c:462 +#, c-format +msgid "lppasswd: failed to backup old password file: %s\n" +msgstr "lppasswd: gagal mencadangkan berkas sandi yang lama: %s\n" + +#: systemv/lppasswd.c:475 +#, c-format +msgid "lppasswd: failed to rename password file: %s\n" +msgstr "lppasswd: gagal mengubah nama berkas sandi: %s\n" + +#: systemv/lppasswd.c:404 +#, c-format +msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n" +msgstr "lppasswd: pengguna \"%s\" dan kelompok \"%s\" tidak ada.\n" + +#: berkeley/lprm.c:74 berkeley/lprm.c:170 +msgid "lprm: Unable to contact server!\n" +msgstr "lprm: Tak bisa menghubungi server!\n" + +#: systemv/lpstat.c:1104 +#, c-format +msgid "lpstat: error - %s environment variable names non-existent destination \"%s\"!\n" +msgstr "lpstat: kesalahan - nama variabel lingkungan %s bukanlah tujuan yang ada \"%s\"!\n" + +#: systemv/lpstat.c:1033 +#, c-format +msgid "members of class %s:\n" +msgstr "anggota kelas %s:\n" + +#: berkeley/lpq.c:575 +msgid "no entries\n" +msgstr "tak ada entri\n" + +#: systemv/lpstat.c:1108 +msgid "no system default destination\n" +msgstr "tak ada tujuan sistem utama\n" + +#: scheduler/ipp.c:5324 +msgid "notify-events not specified!" +msgstr "notify-events tidak dispesifikasikan!" + +#: scheduler/ipp.c:5229 +#, c-format +msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!" +msgstr "URI notify-recipient-uri \"%s\" memakai skema tak dikenal!" + +#: scheduler/ipp.c:3285 scheduler/ipp.c:5948 scheduler/ipp.c:6571 +#: scheduler/ipp.c:7925 +#, c-format +msgid "notify-subscription-id %d no good!" +msgstr "notify-subscription-id %d tidak baik!" + +#: cups/adminutil.c:922 +#, c-format +msgid "open of %s failed: %s" +msgstr "membuka %s gagal: %s" + +#: cups/notify.c:87 +msgid "pending" +msgstr "tunda" + +#: systemv/lpstat.c:2024 +#, c-format +msgid "printer %s disabled since %s -\n" +msgstr "pencetak %s ditiadakan sejak %s -\n" + +#: systemv/lpstat.c:2013 +#, c-format +msgid "printer %s is idle. enabled since %s\n" +msgstr "pencetak %s sedang menganggur. diaktifkan sejak %s\n" + +#: systemv/lpstat.c:2018 +#, c-format +msgid "printer %s now printing %s-%d. enabled since %s\n" +msgstr "pencetak %s saat ini tengah mencetak %s-%d. diaktifkan sejak %s\n" + +#: systemv/lpstat.c:2136 +#, c-format +msgid "printer %s/%s disabled since %s -\n" +msgstr "pencetak %s/%s dinonaktifkan sejak %s -\n" + +#: systemv/lpstat.c:2122 +#, c-format +msgid "printer %s/%s is idle. enabled since %s\n" +msgstr "pencetak %s/%s sedang menganggur. diaktifkan sejak %s\n" + +#: systemv/lpstat.c:2129 +#, c-format +msgid "printer %s/%s now printing %s-%d. enabled since %s\n" +msgstr "pencetak %s/%s saat ini tengah mencetak %s-%d. diaktifkan sejak %s\n" + +#: cups/notify.c:93 cups/notify.c:134 +msgid "processing" +msgstr "memproses" + +#: systemv/lp.c:722 +#, c-format +msgid "request id is %s-%d (%d file(s))\n" +msgstr "identitas permintaan adalah %s-%d (%d berkas)\n" + +#: systemv/lpstat.c:2256 +msgid "scheduler is not running\n" +msgstr "penjadwal tidak berjalan\n" + +#: systemv/lpstat.c:2254 +msgid "scheduler is running\n" +msgstr "penjadwal tengah berjalan\n" + +#: cups/adminutil.c:2168 +#, c-format +msgid "stat of %s failed: %s" +msgstr "status dari %s gagal: %s" + +#: berkeley/lpc.c:216 +msgid "status\t\tshow status of daemon and queue\n" +msgstr "status\t\tmenampilkan status daemon dan antrian\n" + +#: cups/notify.c:96 cups/notify.c:137 +msgid "stopped" +msgstr "dihentikan" + +#: systemv/lpstat.c:1082 +#, c-format +msgid "system default destination: %s\n" +msgstr "tujuan standar sistem: %s\n" + +#: systemv/lpstat.c:1079 +#, c-format +msgid "system default destination: %s/%s\n" +msgstr "tujuan standar sistem: %s/%s\n" + +#: cups/notify.c:108 cups/notify.c:140 +msgid "unknown" +msgstr "tak dikenal" + +#: cups/notify.c:117 +msgid "untitled" +msgstr "tak berjudul" + diff --git a/locale/ppdc_id.po b/locale/ppdc_id.po new file mode 100644 index 000000000..96b46447f --- /dev/null +++ b/locale/ppdc_id.po @@ -0,0 +1,592 @@ +# Template message catalog for the CUPS PPD compiler. +msgid "Color Mode" +msgstr "Color Mode" + +msgid "2-Sided Printing" +msgstr "2-Sided Printing" + +msgid "Media Source" +msgstr "Media Source" + +msgid "Options Installed" +msgstr "Options Installed" + +msgid "Paper Type" +msgstr "Paper Type" + +msgid "Duplex Unit" +msgstr "Duplex Unit" + +msgid "Optional Input Tray" +msgstr "Optional Input Tray" + +msgid "Optional Hard Disk" +msgstr "Optional Hard Disk" + +msgid "Media Size" +msgstr "Media Size" + +msgid "8 x 10\"" +msgstr "8 x 10\"" + +msgid "9 x 11\"" +msgstr "9 x 11\"" + +msgid "9x12 Closed Booklet Envelope" +msgstr "9x12 Closed Booklet Envelope" + +msgid "A3 (297 x 420 mm)" +msgstr "A3 (297 x 420 mm)" + +msgid "A3 (Oversize)" +msgstr "A3 (Oversize)" + +msgid "Full Bleed A3" +msgstr "Full Bleed A3" + +msgid "A3 Oversize Tray" +msgstr "A3 Oversize Tray" + +msgid "A4 (210 x 297 mm)" +msgstr "A4 (210 x 297 mm)" + +msgid "Full Bleed A4" +msgstr "Full Bleed A4" + +msgid "A4 (Small)" +msgstr "A4 (Small)" + +msgid "A5 (148 x 210 mm)" +msgstr "A5 (148 x 210 mm)" + +msgid "A6 (105 x 148 mm)" +msgstr "A6 (105 x 148 mm)" + +msgid "A6 Card" +msgstr "A6 Card" + +msgid "C" +msgstr "C" + +msgid "D" +msgstr "D" + +msgid "E" +msgstr "E" + +msgid "ARCH A" +msgstr "ARCH A" + +msgid "ARCH B" +msgstr "ARCH B" + +msgid "ARCH C" +msgstr "ARCH C" + +msgid "ARCH D" +msgstr "ARCH D" + +msgid "ARCH E" +msgstr "ARCH E" + +msgid "Adhesive Paper" +msgstr "Adhesive Paper" + +msgid "ANSI C" +msgstr "ANSI C" + +msgid "ANSI D" +msgstr "ANSI D" + +msgid "ANSI E" +msgstr "ANSI E" + +msgid "Auto Select" +msgstr "Auto Select" + +msgid "JB0" +msgstr "JB0" + +msgid "JB1" +msgstr "JB1" + +msgid "JB2" +msgstr "JB2" + +msgid "JB3" +msgstr "JB3" + +msgid "B4 (JIS)" +msgstr "B4 (JIS)" + +msgid "JIS B5" +msgstr "JIS B5" + +msgid "B6 (JIS)" +msgstr "B6 (JIS)" + +msgid "Black" +msgstr "Black" + +msgid "Bond Paper" +msgstr "Bond Paper" + +msgid "Bin 1" +msgstr "Bin 1" + +msgid "Bin 10" +msgstr "Bin 10" + +msgid "Bin 2" +msgstr "Bin 2" + +msgid "Bin 3" +msgstr "Bin 3" + +msgid "Bin 4" +msgstr "Bin 4" + +msgid "Bin 5" +msgstr "Bin 5" + +msgid "Bin 6" +msgstr "Bin 6" + +msgid "Bin 7" +msgstr "Bin 7" + +msgid "Bin 8" +msgstr "Bin 8" + +msgid "Bin 9" +msgstr "Bin 9" + +msgid "Black Only" +msgstr "Black Only" + +msgid "Bypass Tray" +msgstr "Bypass Tray" + +msgid "9 Envelope" +msgstr "9 Envelope" + +msgid "C5 Envelope" +msgstr "C5 Envelope" + +msgid "Envelope C6" +msgstr "Envelope C6" + +msgid "Color" +msgstr "Color" + +msgid "Card Stock" +msgstr "Card Stock" + +msgid "Paper Cassette" +msgstr "Paper Cassette" + +msgid "Heavy Weight Matte" +msgstr "Heavy Weight Matte" + +msgid "Colored Paper" +msgstr "Colored Paper" + +msgid "Env Comm10" +msgstr "Env Comm10" + +msgid "Printer Default" +msgstr "Printer Default" + +msgid "Long Edge" +msgstr "Long Edge" + +msgid "Short Edge" +msgstr "Short Edge" + +msgid "#10 Envelope" +msgstr "#10 Envelope" + +msgid "C4 Envelope" +msgstr "C4 Envelope" + +msgid "C5 Envelope" +msgstr "C5 Envelope" + +msgid "C6 Env." +msgstr "C6 Env." + +msgid "Envelope MAX" +msgstr "Envelope MAX" + +msgid "Choukei 4 Gou" +msgstr "Choukei 4 Gou" + +msgid "DL Envelope" +msgstr "DL Envelope" + +msgid "B4 Envelope" +msgstr "B4 Envelope" + +msgid "Env ISO B5" +msgstr "Env ISO B5" + +msgid "B6 " +msgstr "B6 " + +msgid "Kaku #2 envelope" +msgstr "Kaku #2 envelope" + +msgid "Monarch Envelope" +msgstr "Monarch Envelope" + +msgid "#6 3/4 Envelope" +msgstr "#6 3/4 Envelope" + +msgid "Envelope #4" +msgstr "Envelope #4" + +msgid "Envelope Feeder" +msgstr "Envelope Feeder" + +msgid "7.25 x 10.5\"" +msgstr "7.25 x 10.5\"" + +msgid "Off" +msgstr "Off" + +msgid "Finisher Tray" +msgstr "Finisher Tray" + +msgid "Glossy Paper" +msgstr "Glossy Paper" + +msgid "Glossy Film" +msgstr "Glossy Film" + +msgid "Black and White" +msgstr "Black and White" + +msgid "Statement" +msgstr "Statement" + +msgid "A0" +msgstr "A0" + +msgid "A1" +msgstr "A1" + +msgid "A2" +msgstr "A2" + +msgid "A3" +msgstr "A3" + +msgid "A4" +msgstr "A4" + +msgid "ISO B3" +msgstr "ISO B3" + +msgid "ISO B4" +msgstr "ISO B4" + +msgid "B5" +msgstr "B5" + +msgid "B6" +msgstr "B6" + +msgid "Tab Stock" +msgstr "Tab Stock" + +msgid "Inkjet Paper" +msgstr "Inkjet Paper" + +msgid "Installed" +msgstr "Installed" + +msgid "Iron-On Transfer" +msgstr "Iron-On Transfer" + +msgid "JB0" +msgstr "JB0" + +msgid "JB1" +msgstr "JB1" + +msgid "JB2" +msgstr "JB2" + +msgid "JB3" +msgstr "JB3" + +msgid "JB4" +msgstr "JB4" + +msgid "Hagaki" +msgstr "Hagaki" + +msgid "Ofuku Hagaki" +msgstr "Ofuku Hagaki" + +msgid "Labels" +msgstr "Labels" + +msgid "Tray 4" +msgstr "Tray 4" + +msgid "US Legal" +msgstr "US Legal" + +msgid "Legal (Small)" +msgstr "Legal (Small)" + +msgid "US Letter" +msgstr "US Letter" + +msgid "Full Bleed US Letter" +msgstr "Full Bleed US Letter" + +msgid "Letter Plus" +msgstr "Letter Plus" + +msgid "Letter (Small)" +msgstr "Letter (Small)" + +msgid "Lower Tray" +msgstr "Lower Tray" + +msgid "Mailbox" +msgstr "Mailbox" + +msgid "Manual Feed" +msgstr "Manual Feed" + +msgid "Manual Envelope" +msgstr "Manual Envelope" + +msgid "Middle Tray" +msgstr "Middle Tray" + +msgid "Off" +msgstr "Off" + +msgid "Not Installed" +msgstr "Not Installed" + +msgid "On" +msgstr "On" + +msgid "Oversize A0" +msgstr "Oversize A0" + +msgid "Oversize A1" +msgstr "Oversize A1" + +msgid "Oversize A2" +msgstr "Oversize A2" + +msgid "None" +msgstr "None" + +msgid "Bin 1" +msgstr "Bin 1" + +msgid "Bin 2" +msgstr "Bin 2" + +msgid "Bin 3" +msgstr "Bin 3" + +msgid "Bin 4" +msgstr "Bin 4" + +msgid "Bin 5" +msgstr "Bin 5" + +msgid "Bin 6" +msgstr "Bin 6" + +msgid "Bin 7" +msgstr "Bin 7" + +msgid "Bin 8" +msgstr "Bin 8" + +msgid "Mailbox Tray 1" +msgstr "Mailbox Tray 1" + +msgid "Mailbox Tray 10" +msgstr "Mailbox Tray 10" + +msgid "Mailbox Tray 2" +msgstr "Mailbox Tray 2" + +msgid "Mailbox Tray 3" +msgstr "Mailbox Tray 3" + +msgid "Mailbox Tray 4" +msgstr "Mailbox Tray 4" + +msgid "Mailbox Tray 5" +msgstr "Mailbox Tray 5" + +msgid "Mailbox Tray 6" +msgstr "Mailbox Tray 6" + +msgid "Mailbox Tray 7" +msgstr "Mailbox Tray 7" + +msgid "Mailbox Tray 8" +msgstr "Mailbox Tray 8" + +msgid "Mailbox Tray 9" +msgstr "Mailbox Tray 9" + +msgid "24\" x 108\"" +msgstr "24\" x 108\"" + +msgid "24\" x 48\"" +msgstr "24\" x 48\"" + +msgid "24\" x 60\"" +msgstr "24\" x 60\"" + +msgid "24\" x 72\"" +msgstr "24\" x 72\"" + +msgid "24\" x 84\"" +msgstr "24\" x 84\"" + +msgid "24\" x 96\"" +msgstr "24\" x 96\"" + +msgid "36\" x 108\"" +msgstr "36\" x 108\"" + +msgid "36\" x 60\"" +msgstr "36\" x 60\"" + +msgid "36\" x 72\"" +msgstr "36\" x 72\"" + +msgid "36\" x 84\"" +msgstr "36\" x 84\"" + +msgid "36\" x 96\"" +msgstr "36\" x 96\"" + +msgid "42\" x 60\"" +msgstr "42\" x 60\"" + +msgid "42\" x 72\"" +msgstr "42\" x 72\"" + +msgid "42\" x 84\"" +msgstr "42\" x 84\"" + +msgid "54\" x 72\"" +msgstr "54\" x 72\"" + +msgid "54\" x 84\"" +msgstr "54\" x 84\"" + +msgid "54\" x 96\"" +msgstr "54\" x 96\"" + +msgid "60\" x 72\"" +msgstr "60\" x 72\"" + +msgid "60\" x 84\"" +msgstr "60\" x 84\"" + +msgid "60\" x 96\"" +msgstr "60\" x 96\"" + +msgid "Photo Paper" +msgstr "Photo Paper" + +msgid "Plain Paper" +msgstr "Plain Paper" + +msgid "Letterhead" +msgstr "Letterhead" + +msgid "Printer Default" +msgstr "Printer Default" + +msgid "Color" +msgstr "Color" + +msgid "Recycled Paper" +msgstr "Recycled Paper" + +msgid "Roll Feed" +msgstr "Roll Feed" + +msgid "Roll 1" +msgstr "Roll 1" + +msgid "Roll 2" +msgstr "Roll 2" + +msgid "Cut Sheet" +msgstr "Cut Sheet" + +msgid "Super B" +msgstr "Super B" + +msgid "Toyo" +msgstr "Toyo" + +msgid "Tab Stock" +msgstr "Tab Stock" + +msgid "11x17" +msgstr "11x17" + +msgid "11x17 (Oversize)" +msgstr "11x17 (Oversize)" + +msgid "12x18" +msgstr "12x18" + +msgid "Full Bleed Tabloid" +msgstr "Full Bleed Tabloid" + +msgid "11x17" +msgstr "11x17" + +msgid "Thick Paper" +msgstr "Thick Paper" + +msgid "Top Output Tray" +msgstr "Top Output Tray" + +msgid "Top Output Tray" +msgstr "Top Output Tray" + +msgid "Transparency" +msgstr "Transparency" + +msgid "Tray 1" +msgstr "Tray 1" + +msgid "Tray 2" +msgstr "Tray 2" + +msgid "Tray 3" +msgstr "Tray 3" + +msgid "Tray 4" +msgstr "Tray 4" + +msgid "Tray 5" +msgstr "Tray 5" + +msgid "Tray 6" +msgstr "Tray 6" + +msgid "Upper Tray" +msgstr "Upper Tray" + diff --git a/man/Makefile b/man/Makefile index 72477b7cd..c89770b08 100644 --- a/man/Makefile +++ b/man/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6657 2007-07-13 01:01:14Z mike $" +# "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $" # # Man page makefile for the Common UNIX Printing System (CUPS). # @@ -223,5 +223,5 @@ mantohtml: mantohtml.o # -# End of "$Id: Makefile 6657 2007-07-13 01:01:14Z mike $". +# End of "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $". # diff --git a/man/accept.man b/man/accept.man index 3063b09a8..477d125e9 100644 --- a/man/accept.man +++ b/man/accept.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: accept.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: accept.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" accept/reject man page for the Common UNIX Printing System (CUPS). .\" @@ -75,5 +75,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: accept.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: accept.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/backend.man b/man/backend.man index e4524707f..b8a52d9ba 100644 --- a/man/backend.man +++ b/man/backend.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: backend.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: backend.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" Backend man page for the Common UNIX Printing System (CUPS). .\" @@ -175,5 +175,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: backend.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: backend.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cancel.man b/man/cancel.man index 646467a23..babaeed8d 100644 --- a/man/cancel.man +++ b/man/cancel.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: cancel.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cancel man page for the Common UNIX Printing System (CUPS). .\" @@ -71,5 +71,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: cancel.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/classes.conf.man b/man/classes.conf.man index 5987f68bf..882192770 100644 --- a/man/classes.conf.man +++ b/man/classes.conf.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: classes.conf.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: classes.conf.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" classes.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -114,5 +114,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: classes.conf.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: classes.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/commandtoescpx.man b/man/commandtoescpx.man index 683edeaaf..d860a3798 100644 --- a/man/commandtoescpx.man +++ b/man/commandtoescpx.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: commandtoescpx.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" rastertoescpx man page for the CUPS Driver Development Kit. .\" @@ -29,5 +29,5 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1), ppdcfile(5) .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: commandtoescpx.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/commandtopclx.man b/man/commandtopclx.man index dec7add2e..529a4cf64 100644 --- a/man/commandtopclx.man +++ b/man/commandtopclx.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: commandtopclx.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" rastertopclx man page for the CUPS Driver Development Kit. .\" @@ -29,5 +29,5 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1), ppdcfile(5) .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: commandtopclx.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cups-config.man b/man/cups-config.man index 6e6e014ea..761261553 100644 --- a/man/cups-config.man +++ b/man/cups-config.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: cups-config.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cups-config.man 7646 2008-06-16 17:26:20Z mike $" .\" .\" cups-config man page for the Common UNIX Printing System (CUPS). .\" @@ -106,5 +106,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: cups-config.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cups-config.man 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/cups-deviced.man.in b/man/cups-deviced.man.in index 9db1f07c6..c3a99334f 100644 --- a/man/cups-deviced.man.in +++ b/man/cups-deviced.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cups-deviced.man.in 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cups-deviced.man.in 7646 2008-06-16 17:26:20Z mike $" .\" .\" cups-deviced man page for the Common UNIX Printing System (CUPS). .\" @@ -40,5 +40,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: cups-deviced.man.in 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cups-deviced.man.in 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/cups-driverd.man.in b/man/cups-driverd.man.in index b84a78fe7..576d3612a 100644 --- a/man/cups-driverd.man.in +++ b/man/cups-driverd.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cups-driverd.man.in 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cups-driverd.man.in 7662 2008-06-17 14:34:20Z mike $" .\" .\" cups-driverd man page for the Common UNIX Printing System (CUPS). .\" @@ -101,5 +101,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: cups-driverd.man.in 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cups-driverd.man.in 7662 2008-06-17 14:34:20Z mike $". .\" diff --git a/man/cups-lpd.man.in b/man/cups-lpd.man.in index 6c8cd3ddc..6c06e75ae 100644 --- a/man/cups-lpd.man.in +++ b/man/cups-lpd.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cups-lpd.man.in 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cups-lpd.man.in 7600 2008-05-20 21:06:23Z mike $" .\" .\" cups-lpd man page for the Common UNIX Printing System (CUPS). .\" @@ -114,5 +114,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: cups-lpd.man.in 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cups-lpd.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cups-polld.man b/man/cups-polld.man index b6a3ba120..17a9719c6 100644 --- a/man/cups-polld.man +++ b/man/cups-polld.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: cups-polld.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cups-polld.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cups-polld man page for the Common UNIX Printing System (CUPS). .\" @@ -34,5 +34,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: cups-polld.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cups-polld.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cups-snmp.conf.man b/man/cups-snmp.conf.man index 4374cf684..bb8e4b8b5 100644 --- a/man/cups-snmp.conf.man +++ b/man/cups-snmp.conf.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: cups-snmp.conf.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" snmp.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -69,5 +69,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: cups-snmp.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsaddsmb.man.in b/man/cupsaddsmb.man.in index 832145935..00e05ebfa 100644 --- a/man/cupsaddsmb.man.in +++ b/man/cupsaddsmb.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cupsaddsmb.man.in 6729 2007-07-26 00:30:52Z mike $" +.\" "$Id: cupsaddsmb.man.in 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupsaddsmb man page for the Common UNIX Printing System (CUPS). .\" @@ -210,5 +210,5 @@ http://www.cups.org/windows/ .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: cupsaddsmb.man.in 6729 2007-07-26 00:30:52Z mike $". +.\" End of "$Id: cupsaddsmb.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsctl.man b/man/cupsctl.man index f88fee99c..dc4929d7b 100644 --- a/man/cupsctl.man +++ b/man/cupsctl.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: cupsctl.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupsctl man page for the Common UNIX Printing System (CUPS). .\" @@ -101,5 +101,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: cupsctl.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsd.conf.man.in b/man/cupsd.conf.man.in index 875a087c8..5423988e9 100644 --- a/man/cupsd.conf.man.in +++ b/man/cupsd.conf.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cupsd.conf.man.in 7002 2007-10-01 23:07:37Z mike $" +.\" "$Id: cupsd.conf.man.in 7645 2008-06-16 17:21:10Z mike $" .\" .\" cupsd.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -618,5 +618,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: cupsd.conf.man.in 7002 2007-10-01 23:07:37Z mike $". +.\" End of "$Id: cupsd.conf.man.in 7645 2008-06-16 17:21:10Z mike $". .\" diff --git a/man/cupsd.man.in b/man/cupsd.man.in index bdcff0316..e754a64f5 100644 --- a/man/cupsd.man.in +++ b/man/cupsd.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: cupsd.man.in 6875 2007-08-27 23:25:06Z mike $" +.\" "$Id: cupsd.man.in 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupsd man page for the Common UNIX Printing System (CUPS). .\" @@ -69,5 +69,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: cupsd.man.in 6875 2007-08-27 23:25:06Z mike $". +.\" End of "$Id: cupsd.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsenable.man b/man/cupsenable.man index a45518fdf..a466213fe 100644 --- a/man/cupsenable.man +++ b/man/cupsenable.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: cupsenable.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cupsenable.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupsenable/cupsdisable man page for the Common UNIX Printing System .\" (CUPS). @@ -80,5 +80,5 @@ http://localhost:631/help Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: cupsenable.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cupsenable.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsfilter.man b/man/cupsfilter.man index 0ccddc88a..a2d5c087d 100644 --- a/man/cupsfilter.man +++ b/man/cupsfilter.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: cupsfilter.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupsfilter man page for the Common UNIX Printing System (CUPS). .\" @@ -76,5 +76,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: cupsfilter.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupstestdsc.man b/man/cupstestdsc.man index fb9d245fd..ce1c3a4d0 100644 --- a/man/cupstestdsc.man +++ b/man/cupstestdsc.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: cupstestdsc.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupstestdsc man page for the Common UNIX Printing System (CUPS). .\" @@ -46,5 +46,5 @@ Specification, Version 3.0. .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: cupstestdsc.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupstestppd.man b/man/cupstestppd.man index 9cbfbd0e4..311c71808 100644 --- a/man/cupstestppd.man +++ b/man/cupstestppd.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: cupstestppd.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: cupstestppd.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" cupstestppd man page for the Common UNIX Printing System (CUPS). .\" @@ -143,5 +143,5 @@ Adobe PostScript Printer Description File Format Specification, Version 4.3. .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: cupstestppd.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: cupstestppd.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/filter.man b/man/filter.man index 17849f661..049e378f3 100644 --- a/man/filter.man +++ b/man/filter.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: filter.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: filter.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" filter man page for the Common UNIX Printing System (CUPS). .\" @@ -224,5 +224,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: filter.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: filter.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lp.man b/man/lp.man index e505e23c3..f2e4ef9af 100644 --- a/man/lp.man +++ b/man/lp.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lp.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lp.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lp man page for the Common UNIX Printing System (CUPS). .\" @@ -239,5 +239,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lp.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lp.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpadmin.man b/man/lpadmin.man index ab6fc264e..91658aafb 100644 --- a/man/lpadmin.man +++ b/man/lpadmin.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpadmin.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpadmin.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpadmin man page for the Common UNIX Printing System (CUPS). .\" @@ -203,5 +203,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: lpadmin.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpadmin.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpc.man b/man/lpc.man index be2add312..caa9896af 100644 --- a/man/lpc.man +++ b/man/lpc.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpc.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpc.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpc man page for the Common UNIX Printing System (CUPS). .\" @@ -67,5 +67,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpc.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpc.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpinfo.man b/man/lpinfo.man index 81a583c1b..fff2ddd48 100644 --- a/man/lpinfo.man +++ b/man/lpinfo.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpinfo.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpinfo.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpinfo man page for the Common UNIX Printing System (CUPS). .\" @@ -61,5 +61,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpinfo.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpinfo.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpmove.man b/man/lpmove.man index 0447fbc98..5bd406ffb 100644 --- a/man/lpmove.man +++ b/man/lpmove.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpmove.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpmove.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpmove man page for the Common UNIX Printing System (CUPS). .\" @@ -62,5 +62,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpmove.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpmove.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpoptions.man.in b/man/lpoptions.man.in index ac9f7d4df..c446142b8 100644 --- a/man/lpoptions.man.in +++ b/man/lpoptions.man.in @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpoptions.man.in 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpoptions.man.in 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpoptions man page for the Common UNIX Printing System (CUPS). .\" @@ -131,5 +131,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpoptions.man.in 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpoptions.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lppasswd.man b/man/lppasswd.man index 7aa830430..93e89e0b7 100644 --- a/man/lppasswd.man +++ b/man/lppasswd.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lppasswd.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lppasswd.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpadmin man page for the Common UNIX Printing System (CUPS). .\" @@ -64,5 +64,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: lppasswd.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lppasswd.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpq.man b/man/lpq.man index 5745011d4..8bbe47b56 100644 --- a/man/lpq.man +++ b/man/lpq.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpq.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpq.man 7646 2008-06-16 17:26:20Z mike $" .\" .\" lpq man page for the Common UNIX Printing System (CUPS). .\" @@ -68,5 +68,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: lpq.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpq.man 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/lpr.man b/man/lpr.man index d381cf76c..d678e61f2 100644 --- a/man/lpr.man +++ b/man/lpr.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpr.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpr.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpr man page for the Common UNIX Printing System (CUPS). .\" @@ -114,5 +114,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpr.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpr.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lprm.man b/man/lprm.man index 937b079bd..6f24d09a2 100644 --- a/man/lprm.man +++ b/man/lprm.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lprm.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lprm.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lprm man page for the Common UNIX Printing System (CUPS). .\" @@ -61,5 +61,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lprm.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lprm.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpstat.man b/man/lpstat.man index 96ae4c8f6..47294c5a5 100644 --- a/man/lpstat.man +++ b/man/lpstat.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: lpstat.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: lpstat.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" lpstat man page for the Common UNIX Printing System (CUPS). .\" @@ -135,5 +135,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: lpstat.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: lpstat.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/mailto.conf.man b/man/mailto.conf.man index 192079bbc..c6d9d3932 100644 --- a/man/mailto.conf.man +++ b/man/mailto.conf.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: mailto.conf.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" mailto.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -56,5 +56,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: mailto.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/mantohtml.c b/man/mantohtml.c index 9ae8de71d..12059ac45 100644 --- a/man/mantohtml.c +++ b/man/mantohtml.c @@ -1,5 +1,5 @@ /* - * "$Id: mantohtml.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: mantohtml.c 7662 2008-06-17 14:34:20Z mike $" * * Man page to HTML conversion program. * @@ -716,5 +716,5 @@ strmove(char *d, /* I - Destination */ /* - * End of "$Id: mantohtml.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: mantohtml.c 7662 2008-06-17 14:34:20Z mike $". */ diff --git a/man/mime.convs.man b/man/mime.convs.man index 3ff7ae084..9c91a65c7 100644 --- a/man/mime.convs.man +++ b/man/mime.convs.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: mime.convs.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: mime.convs.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" mime.convs man page for the Common UNIX Printing System (CUPS). .\" @@ -42,5 +42,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: mime.convs.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: mime.convs.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/mime.types.man b/man/mime.types.man index 24659a991..ce785907f 100644 --- a/man/mime.types.man +++ b/man/mime.types.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: mime.types.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: mime.types.man 7670 2008-06-17 22:42:08Z mike $" .\" .\" mime.types man page for the Common UNIX Printing System (CUPS). .\" @@ -95,5 +95,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id: mime.types.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: mime.types.man 7670 2008-06-17 22:42:08Z mike $". .\" diff --git a/man/ppdc.man b/man/ppdc.man index f352cfd6a..66c682eea 100644 --- a/man/ppdc.man +++ b/man/ppdc.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdc.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" ppdc man page for the Common UNIX Printing System. .\" @@ -76,5 +76,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdc.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdcfile.man b/man/ppdcfile.man index d032cb670..de4f95129 100644 --- a/man/ppdcfile.man +++ b/man/ppdcfile.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdcfile.man 7607 2008-05-21 01:06:23Z mike $" .\" .\" ppdcfile man page for the Common UNIX Printing System. .\" @@ -167,5 +167,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdcfile.man 7607 2008-05-21 01:06:23Z mike $". .\" diff --git a/man/ppdhtml.man b/man/ppdhtml.man index 2d20f07cb..5727e6e30 100644 --- a/man/ppdhtml.man +++ b/man/ppdhtml.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdhtml.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" ppdhtml man page for the Common UNIX Printing System. .\" @@ -36,5 +36,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdhtml.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdi.man b/man/ppdi.man index 526b9437c..85db4346b 100644 --- a/man/ppdi.man +++ b/man/ppdi.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdi.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" ppdi man page for the Common UNIX Printing System. .\" @@ -42,5 +42,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdi.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdmerge.man b/man/ppdmerge.man index 132c40ebc..45bb02e1a 100644 --- a/man/ppdmerge.man +++ b/man/ppdmerge.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdmerge.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" ppdmerge man page for the Common UNIX Printing System. .\" @@ -43,5 +43,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdmerge.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdpo.man b/man/ppdpo.man index 4f3f4867f..e353d1760 100644 --- a/man/ppdpo.man +++ b/man/ppdpo.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: ppdpo.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" ppdpo man page for the Common UNIX Printing System. .\" @@ -42,5 +42,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: ppdpo.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/printers.conf.man b/man/printers.conf.man index 56da5db47..7abd1cd46 100644 --- a/man/printers.conf.man +++ b/man/printers.conf.man @@ -1,5 +1,5 @@ .\" -.\" "$Id: printers.conf.man 6649 2007-07-11 21:46:42Z mike $" +.\" "$Id: printers.conf.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" printers.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -118,5 +118,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id: printers.conf.man 6649 2007-07-11 21:46:42Z mike $". +.\" End of "$Id: printers.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/rastertoescpx.man b/man/rastertoescpx.man index 0cd04f703..ab6535136 100644 --- a/man/rastertoescpx.man +++ b/man/rastertoescpx.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: rastertoescpx.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" rastertoescpx man page for the Common UNIX Printing System. .\" @@ -31,5 +31,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: rastertoescpx.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/rastertopclx.man b/man/rastertopclx.man index 2f53f0b6a..266ecf3b7 100644 --- a/man/rastertopclx.man +++ b/man/rastertopclx.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: rastertopclx.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" rastertopclx man page for the Common UNIX Printing System. .\" @@ -31,5 +31,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007-2008 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: rastertopclx.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/subscriptions.conf.man b/man/subscriptions.conf.man index a760a47b7..d51763d22 100644 --- a/man/subscriptions.conf.man +++ b/man/subscriptions.conf.man @@ -1,5 +1,5 @@ .\" -.\" "$Id$" +.\" "$Id: subscriptions.conf.man 7600 2008-05-20 21:06:23Z mike $" .\" .\" subscriptions.conf man page for the Common UNIX Printing System (CUPS). .\" @@ -85,5 +85,5 @@ http://localhost:631/help .SH COPYRIGHT Copyright 2007 by Apple Inc. .\" -.\" End of "$Id$". +.\" End of "$Id: subscriptions.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/monitor/Makefile b/monitor/Makefile index 8f3b58318..2083948e4 100644 --- a/monitor/Makefile +++ b/monitor/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Port monitor makefile for the Common UNIX Printing System (CUPS). # @@ -135,5 +135,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/notifier/Makefile b/notifier/Makefile index 365a62039..4f05e374f 100644 --- a/notifier/Makefile +++ b/notifier/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Notifier makefile for the Common UNIX Printing System (CUPS). # @@ -143,5 +143,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/notifier/mailto.c b/notifier/mailto.c index 3376065fe..ca6c85f06 100644 --- a/notifier/mailto.c +++ b/notifier/mailto.c @@ -1,5 +1,5 @@ /* - * "$Id: mailto.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: mailto.c 7460 2008-04-16 02:19:54Z mike $" * * "mailto" notifier for the Common UNIX Printing System (CUPS). * @@ -786,5 +786,5 @@ print_attributes(ipp_t *ipp, /* I - IPP request */ /* - * End of "$Id: mailto.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: mailto.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/notifier/rss.c b/notifier/rss.c index 03f1199bb..aac3abf39 100644 --- a/notifier/rss.c +++ b/notifier/rss.c @@ -1,5 +1,5 @@ /* - * "$Id: rss.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: rss.c 7451 2008-04-14 20:02:39Z mike $" * * RSS notifier for the Common UNIX Printing System (CUPS). * @@ -697,5 +697,5 @@ xml_escape(const char *s) /* I - String to escape */ /* - * End of "$Id: rss.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: rss.c 7451 2008-04-14 20:02:39Z mike $". */ diff --git a/packaging/cups.list.in b/packaging/cups.list.in index 48324fd8a..c0ffc9b52 100644 --- a/packaging/cups.list.in +++ b/packaging/cups.list.in @@ -1,5 +1,5 @@ # -# "$Id: cups.list.in 7014 2007-10-10 21:57:43Z mike $" +# "$Id: cups.list.in 7693 2008-06-25 17:12:28Z mike $" # # ESP Package Manager (EPM) file list for the Common UNIX Printing # System (CUPS). @@ -41,12 +41,54 @@ %replaces LPRng %requires cups-libs 1:@CUPS_VERSION@ +# Replace all of the old localization subpackages from CUPS 1.2/1.3 +%replaces cups-da +%replaces cups-de +%replaces cups-es +%replaces cups-et +%replaces cups-fi +%replaces cups-fr +%replaces cups-he +%replaces cups-id +%replaces cups-it +%replaces cups-ja +%replaces cups-ko +%replaces cups-nl +%replaces cups-no +%replaces cups-pl +%replaces cups-pt +%replaces cups-ru +%replaces cups-sv +%replaces cups-zh + + %format deb %provides cupsys %provides cupsys-client %provides cupsys-bsd %requires cups-libs +# Replace all of the old localization subpackages from CUPS 1.2/1.3 +%replaces cups-da +%replaces cups-de +%replaces cups-es +%replaces cups-et +%replaces cups-fi +%replaces cups-fr +%replaces cups-he +%replaces cups-id +%replaces cups-it +%replaces cups-ja +%replaces cups-ko +%replaces cups-nl +%replaces cups-no +%replaces cups-pl +%replaces cups-pt +%replaces cups-ru +%replaces cups-sv +%replaces cups-zh + + %format pkg %replaces SUNWlpmsg LP Alerts %replaces SUNWlpr LP Print Service, (Root) @@ -71,9 +113,49 @@ %incompat fw_cups 0 0 1289999999 1289999999 %requires cups.sw.libs +# Replace all of the old localization subpackages from CUPS 1.2/1.3 +%replaces cups.sw.da +%replaces cups.sw.de +%replaces cups.sw.es +%replaces cups.sw.et +%replaces cups.sw.fi +%replaces cups.sw.fr +%replaces cups.sw.he +%replaces cups.sw.id +%replaces cups.sw.it +%replaces cups.sw.ja +%replaces cups.sw.ko +%replaces cups.sw.nl +%replaces cups.sw.no +%replaces cups.sw.pl +%replaces cups.sw.pt +%replaces cups.sw.ru +%replaces cups.sw.sv +%replaces cups.sw.zh + %format portable %requires cups-libs +# Replace all of the old localization subpackages from CUPS 1.2/1.3 +%replaces cups-da +%replaces cups-de +%replaces cups-es +%replaces cups-et +%replaces cups-fi +%replaces cups-fr +%replaces cups-he +%replaces cups-id +%replaces cups-it +%replaces cups-ja +%replaces cups-ko +%replaces cups-nl +%replaces cups-no +%replaces cups-pl +%replaces cups-pt +%replaces cups-ru +%replaces cups-sv +%replaces cups-zh + %format all %subpackage libs @@ -711,5 +793,5 @@ f 0644 root sys $XINETD/cups-lpd init/cups-lpd %subpackage # -# End of "$Id: cups.list.in 7014 2007-10-10 21:57:43Z mike $". +# End of "$Id: cups.list.in 7693 2008-06-25 17:12:28Z mike $". # diff --git a/packaging/cups.spec.in b/packaging/cups.spec.in index 4e564c176..3246b0b00 100644 --- a/packaging/cups.spec.in +++ b/packaging/cups.spec.in @@ -1,5 +1,5 @@ # -# "$Id: cups.spec.in 6889 2007-08-29 22:23:35Z mike $" +# "$Id: cups.spec.in 7693 2008-06-25 17:12:28Z mike $" # # RPM "spec" file for the Common UNIX Printing System (CUPS). # @@ -51,6 +51,9 @@ BuildRoot: /tmp/%{name}-root Requires: %{name}-libs = %{epoch}:%{version} Obsoletes: lpd, lpr, LPRng Provides: lpd, lpr, LPRng +Obsoletes: cups-da, cups-de, cups-es, cups-et, cups-fi, cups-fr, cups-he +Obsoletes: cups-id, cups-it, cups-ja, cups-ko, cups-nl, cups-no, cups-pl +Obsoletes: cups-pt, cups-ru, cups-sv, cups-zh %package devel Summary: Common UNIX Printing System - development environment @@ -356,5 +359,5 @@ rm -rf $RPM_BUILD_ROOT # -# End of "$Id: cups.spec.in 6889 2007-08-29 22:23:35Z mike $". +# End of "$Id: cups.spec.in 7693 2008-06-25 17:12:28Z mike $". # diff --git a/scheduler/Makefile b/scheduler/Makefile index 256a93a0f..abcd07269 100644 --- a/scheduler/Makefile +++ b/scheduler/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Scheduler Makefile for the Common UNIX Printing System (CUPS). # @@ -525,5 +525,5 @@ include Dependencies # -# End of "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/scheduler/auth.c b/scheduler/auth.c index f065a1f51..d0d5641bc 100644 --- a/scheduler/auth.c +++ b/scheduler/auth.c @@ -1,5 +1,5 @@ /* - * "$Id: auth.c 6947 2007-09-12 21:09:49Z mike $" + * "$Id: auth.c 7673 2008-06-18 22:31:26Z mike $" * * Authorization routines for the Common UNIX Printing System (CUPS). * @@ -666,7 +666,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ if (pamerr != PAM_SUCCESS) { cupsdLogMessage(CUPSD_LOG_ERROR, - "cupsdAuthorize: pam_start() returned %d (%s)!\n", + "cupsdAuthorize: pam_start() returned %d (%s)!", pamerr, pam_strerror(pamh, pamerr)); return; } @@ -676,7 +676,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ if (pamerr != PAM_SUCCESS) cupsdLogMessage(CUPSD_LOG_WARN, "cupsdAuthorize: pam_set_item() returned %d " - "(%s)!\n", pamerr, pam_strerror(pamh, pamerr)); + "(%s)!", pamerr, pam_strerror(pamh, pamerr)); # endif /* HAVE_PAM_SET_ITEM && PAM_RHOST */ pamerr = pam_authenticate(pamh, PAM_SILENT); @@ -684,7 +684,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ { cupsdLogMessage(CUPSD_LOG_ERROR, "cupsdAuthorize: pam_authenticate() returned %d " - "(%s)!\n", + "(%s)!", pamerr, pam_strerror(pamh, pamerr)); pam_end(pamh, 0); return; @@ -695,7 +695,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ { cupsdLogMessage(CUPSD_LOG_ERROR, "cupsdAuthorize: pam_acct_mgmt() returned %d " - "(%s)!\n", + "(%s)!", pamerr, pam_strerror(pamh, pamerr)); pam_end(pamh, 0); return; @@ -713,8 +713,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ cupsdLogMessage(CUPSD_LOG_DEBUG, - "cupsdAuthorize: AIX authenticate of username \"%s\"", - username); + "cupsdAuthorize: AIX authenticate of username " + "\"%s\"", username); reenter = 1; if (authenticate(username, password, &reenter, &authmsg) != 0) @@ -2743,5 +2743,5 @@ to64(char *s, /* O - Output string */ /* - * End of "$Id: auth.c 6947 2007-09-12 21:09:49Z mike $". + * End of "$Id: auth.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/auth.h b/scheduler/auth.h index 2679420f0..b5bb65362 100644 --- a/scheduler/auth.h +++ b/scheduler/auth.h @@ -1,5 +1,5 @@ /* - * "$Id: auth.h 6780 2007-08-08 20:50:42Z mike $" + * "$Id: auth.h 7317 2008-02-15 22:29:27Z mike $" * * Authorization definitions for the Common UNIX Printing System (CUPS) * scheduler. @@ -155,5 +155,5 @@ extern http_status_t cupsdIsAuthorized(cupsd_client_t *con, const char *owner); /* - * End of "$Id: auth.h 6780 2007-08-08 20:50:42Z mike $". + * End of "$Id: auth.h 7317 2008-02-15 22:29:27Z mike $". */ diff --git a/scheduler/banners.c b/scheduler/banners.c index 66305fb08..ef73d2e7c 100644 --- a/scheduler/banners.c +++ b/scheduler/banners.c @@ -1,5 +1,5 @@ /* - * "$Id: banners.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: banners.c 7221 2008-01-16 22:20:08Z mike $" * * Banner routines for the Common UNIX Printing System (CUPS). * @@ -220,5 +220,5 @@ free_banners(void) /* - * End of "$Id: banners.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: banners.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/scheduler/cert.c b/scheduler/cert.c index 35f07c647..650363401 100644 --- a/scheduler/cert.c +++ b/scheduler/cert.c @@ -1,5 +1,5 @@ /* - * "$Id: cert.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: cert.c 7673 2008-06-18 22:31:26Z mike $" * * Authentication certificate routines for the Common UNIX * Printing System (CUPS). @@ -311,7 +311,7 @@ cupsdDeleteCert(int pid) /* I - Process ID */ snprintf(filename, sizeof(filename), "%s/certs/%d", StateDir, pid); if (unlink(filename)) cupsdLogMessage(CUPSD_LOG_ERROR, - "cupsdDeleteCert: Unable to remove %s!\n", filename); + "cupsdDeleteCert: Unable to remove %s!", filename); return; } @@ -343,7 +343,7 @@ cupsdDeleteAllCerts(void) snprintf(filename, sizeof(filename), "%s/certs/%d", StateDir, cert->pid); if (unlink(filename)) cupsdLogMessage(CUPSD_LOG_ERROR, - "cupsdDeleteAllCerts: Unable to remove %s!\n", filename); + "cupsdDeleteAllCerts: Unable to remove %s!", filename); /* * Free memory... @@ -437,5 +437,5 @@ cupsdInitCerts(void) /* - * End of "$Id: cert.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: cert.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/cert.h b/scheduler/cert.h index d1158802b..976600146 100644 --- a/scheduler/cert.h +++ b/scheduler/cert.h @@ -1,5 +1,5 @@ /* - * "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: cert.h 7383 2008-03-20 20:58:07Z mike $" * * Authentication certificate definitions for the Common UNIX * Printing System (CUPS). @@ -53,5 +53,5 @@ extern void cupsdInitCerts(void); /* - * End of "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: cert.h 7383 2008-03-20 20:58:07Z mike $". */ diff --git a/scheduler/classes.c b/scheduler/classes.c index 3e905b448..7fa3c4c5e 100644 --- a/scheduler/classes.c +++ b/scheduler/classes.c @@ -1,5 +1,5 @@ /* - * "$Id: classes.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: classes.c 7608 2008-05-21 01:37:21Z mike $" * * Printer class routines for the Common UNIX Printing System (CUPS). * @@ -956,5 +956,5 @@ cupsdUpdateImplicitClasses(void) /* - * End of "$Id: classes.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: classes.c 7608 2008-05-21 01:37:21Z mike $". */ diff --git a/scheduler/client.c b/scheduler/client.c index f56ed64a2..cf8365673 100644 --- a/scheduler/client.c +++ b/scheduler/client.c @@ -1,5 +1,5 @@ /* - * "$Id: client.c 6999 2007-09-28 19:46:53Z mike $" + * "$Id: client.c 7673 2008-06-18 22:31:26Z mike $" * * Client routines for the Common UNIX Printing System (CUPS) scheduler. * @@ -1214,7 +1214,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */ if ((status = cupsdIsAuthorized(con, NULL)) != HTTP_OK) { cupsdLogMessage(CUPSD_LOG_DEBUG2, - "cupsdReadClient: Unauthorized request for %s...\n", + "cupsdReadClient: Unauthorized request for %s...", con->uri); cupsdSendError(con, status, CUPSD_AUTH_NONE); cupsdCloseClient(con); @@ -3695,7 +3695,7 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */ cupsdLogMessage(CUPSD_LOG_DEBUG2, - "is_cgi(con=%p, filename=\"%s\", filestats=%p, type=%s/%s)\n", + "is_cgi(con=%p, filename=\"%s\", filestats=%p, type=%s/%s)", con, filename, filestats, type ? type->super : "unknown", type ? type->type : "unknown"); @@ -4893,5 +4893,5 @@ write_pipe(cupsd_client_t *con) /* I - Client connection */ /* - * End of "$Id: client.c 6999 2007-09-28 19:46:53Z mike $". + * End of "$Id: client.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/client.h b/scheduler/client.h index e6d946d47..c817e7cce 100644 --- a/scheduler/client.h +++ b/scheduler/client.h @@ -1,5 +1,5 @@ /* - * "$Id: client.h 6947 2007-09-12 21:09:49Z mike $" + * "$Id: client.h 7470 2008-04-18 23:24:24Z mike $" * * Client definitions for the Common UNIX Printing System (CUPS) scheduler. * @@ -134,5 +134,5 @@ extern void cupsdWriteClient(cupsd_client_t *con); /* - * End of "$Id: client.h 6947 2007-09-12 21:09:49Z mike $". + * End of "$Id: client.h 7470 2008-04-18 23:24:24Z mike $". */ diff --git a/scheduler/conf.c b/scheduler/conf.c index c9eb950fa..955dc2df1 100644 --- a/scheduler/conf.c +++ b/scheduler/conf.c @@ -1,5 +1,5 @@ /* - * "$Id: conf.c 6930 2007-09-08 00:28:06Z mike $" + * "$Id: conf.c 7694 2008-06-26 00:23:20Z mike $" * * Configuration routines for the Common UNIX Printing System (CUPS). * @@ -1116,22 +1116,23 @@ cupsdReadConfiguration(void) snprintf(temp, sizeof(temp), "%s/filter", ServerBin); snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir); - MimeDatabase = mimeLoad(ServerRoot, temp); + MimeDatabase = mimeLoadTypes(NULL, mimedir); + MimeDatabase = mimeLoadTypes(MimeDatabase, ServerRoot); + MimeDatabase = mimeLoadFilters(MimeDatabase, mimedir, temp); + MimeDatabase = mimeLoadFilters(MimeDatabase, ServerRoot, temp); if (!MimeDatabase) { cupsdLogMessage(CUPSD_LOG_EMERG, - "Unable to load MIME database from \'%s\'!", ServerRoot); + "Unable to load MIME database from \"%s\" or \"%s\"!", + mimedir, ServerRoot); exit(errno); } - if (!access(mimedir, 0)) - MimeDatabase = mimeMerge(MimeDatabase, mimedir, temp); - cupsdLogMessage(CUPSD_LOG_INFO, - "Loaded MIME database from \'%s\': %d types, %d filters...", - ServerRoot, mimeNumTypes(MimeDatabase), - mimeNumFilters(MimeDatabase)); + "Loaded MIME database from \"%s\" and \"%s\": %d types, " + "%d filters...", mimedir, ServerRoot, + mimeNumTypes(MimeDatabase), mimeNumFilters(MimeDatabase)); /* * Create a list of MIME types for the document-format-supported @@ -3400,5 +3401,5 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ /* - * End of "$Id: conf.c 6930 2007-09-08 00:28:06Z mike $". + * End of "$Id: conf.c 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/conf.h b/scheduler/conf.h index 2a91e5ceb..d5c483cc4 100644 --- a/scheduler/conf.h +++ b/scheduler/conf.h @@ -1,5 +1,5 @@ /* - * "$Id: conf.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: conf.h 7674 2008-06-18 23:18:32Z mike $" * * Configuration file definitions for the Common UNIX Printing System (CUPS) * scheduler. @@ -225,6 +225,11 @@ extern int cupsdLogGSSMessage(int level, int major_status, int minor_status, const char *message, ...); #endif /* HAVE_GSSAPI */ +extern int cupsdLogJob(cupsd_job_t *job, int level, const char *message, ...) +#ifdef __GNUC__ +__attribute__ ((__format__ (__printf__, 3, 4))) +#endif /* __GNUC__ */ +; extern int cupsdLogMessage(int level, const char *message, ...) #ifdef __GNUC__ __attribute__ ((__format__ (__printf__, 2, 3))) @@ -233,8 +238,9 @@ __attribute__ ((__format__ (__printf__, 2, 3))) extern int cupsdLogPage(cupsd_job_t *job, const char *page); extern int cupsdLogRequest(cupsd_client_t *con, http_status_t code); extern int cupsdReadConfiguration(void); +extern int cupsdWriteErrorLog(int level, const char *message); /* - * End of "$Id: conf.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: conf.h 7674 2008-06-18 23:18:32Z mike $". */ diff --git a/scheduler/cups-deviced.c b/scheduler/cups-deviced.c index a912358f1..4d05b53c0 100644 --- a/scheduler/cups-deviced.c +++ b/scheduler/cups-deviced.c @@ -1,5 +1,5 @@ /* - * "$Id: cups-deviced.c 7011 2007-10-10 21:13:35Z mike $" + * "$Id: cups-deviced.c 7624 2008-06-09 15:55:04Z mike $" * * Device scanning mini-daemon for the Common UNIX Printing System (CUPS). * @@ -719,5 +719,5 @@ start_backend(const char *name, /* I - Backend to run */ /* - * End of "$Id: cups-deviced.c 7011 2007-10-10 21:13:35Z mike $". + * End of "$Id: cups-deviced.c 7624 2008-06-09 15:55:04Z mike $". */ diff --git a/scheduler/cups-driverd.c b/scheduler/cups-driverd.c index 013f1de89..ed364c721 100644 --- a/scheduler/cups-driverd.c +++ b/scheduler/cups-driverd.c @@ -1,5 +1,5 @@ /* - * "$Id: cups-driverd.c 6762 2007-08-02 18:05:03Z mike $" + * "$Id: cups-driverd.c 7652 2008-06-16 17:56:27Z mike $" * * PPD/driver support for the Common UNIX Printing System (CUPS). * @@ -1704,5 +1704,5 @@ load_drivers(void) /* - * End of "$Id: cups-driverd.c 6762 2007-08-02 18:05:03Z mike $". + * End of "$Id: cups-driverd.c 7652 2008-06-16 17:56:27Z mike $". */ diff --git a/scheduler/cups-lpd.c b/scheduler/cups-lpd.c index 7e810f4ca..ca918c462 100644 --- a/scheduler/cups-lpd.c +++ b/scheduler/cups-lpd.c @@ -1,5 +1,5 @@ /* - * "$Id: cups-lpd.c 6781 2007-08-08 21:09:31Z mike $" + * "$Id: cups-lpd.c 7221 2008-01-16 22:20:08Z mike $" * * Line Printer Daemon interface for the Common UNIX Printing System (CUPS). * @@ -1702,5 +1702,5 @@ smart_gets(char *s, /* I - Pointer to line buffer */ /* - * End of "$Id: cups-lpd.c 6781 2007-08-08 21:09:31Z mike $". + * End of "$Id: cups-lpd.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/scheduler/cups-polld.c b/scheduler/cups-polld.c index 9ffc46d2c..b7165b5c9 100644 --- a/scheduler/cups-polld.c +++ b/scheduler/cups-polld.c @@ -1,5 +1,5 @@ /* - * "$Id: cups-polld.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: cups-polld.c 7198 2008-01-08 00:12:17Z mike $" * * Polling daemon for the Common UNIX Printing System (CUPS). * @@ -471,5 +471,5 @@ sighup_handler(int sig) /* I - Signal number */ /* - * End of "$Id: cups-polld.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: cups-polld.c 7198 2008-01-08 00:12:17Z mike $". */ diff --git a/scheduler/cupsd.h b/scheduler/cupsd.h index 0b68f781a..b4304ce83 100644 --- a/scheduler/cupsd.h +++ b/scheduler/cupsd.h @@ -1,5 +1,5 @@ /* - * "$Id: cupsd.h 6875 2007-08-27 23:25:06Z mike $" + * "$Id: cupsd.h 7317 2008-02-15 22:29:27Z mike $" * * Main header file for the Common UNIX Printing System (CUPS) scheduler. * @@ -234,5 +234,5 @@ extern void cupsdStopSelect(void); extern int cupsdRemoveFile(const char *filename); /* - * End of "$Id: cupsd.h 6875 2007-08-27 23:25:06Z mike $". + * End of "$Id: cupsd.h 7317 2008-02-15 22:29:27Z mike $". */ diff --git a/scheduler/cupsfilter.c b/scheduler/cupsfilter.c index 3ece2f4b2..f60c284fa 100644 --- a/scheduler/cupsfilter.c +++ b/scheduler/cupsfilter.c @@ -1,5 +1,5 @@ /* - * "$Id: cupsfilter.c 6879 2007-08-29 20:26:50Z mike $" + * "$Id: cupsfilter.c 7694 2008-06-26 00:23:20Z mike $" * * CUPS filtering program for the Common UNIX Printing System (CUPS). * @@ -353,18 +353,22 @@ main(int argc, /* I - Number of command-line args */ if (read_cupsd_conf(cupsdconf)) return (1); - if ((mime = mimeLoad(ServerRoot, Path)) == NULL) + snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir); + + mime = mimeLoadTypes(NULL, mimedir); + mime = mimeLoadTypes(mime, ServerRoot); + mime = mimeLoadFilters(mime, mimedir, Path); + mime = mimeLoadFilters(mime, ServerRoot, Path); + + if (!mime) { _cupsLangPrintf(stderr, - _("%s: Unable to read MIME database from \"%s\"!\n"), - command, ServerRoot); + _("%s: Unable to read MIME database from \"%s\" or " + "\"%s\"!\n"), + command, mimedir, ServerRoot); return (1); } - snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir); - if (!access(mimedir, 0)) - mime = mimeMerge(mime, mimedir, Path); - /* * Get the source and destination types... */ @@ -1140,5 +1144,5 @@ usage(const char *command, /* I - Command name */ /* - * End of "$Id: cupsfilter.c 6879 2007-08-29 20:26:50Z mike $". + * End of "$Id: cupsfilter.c 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c index 9b7b285c4..51509b850 100644 --- a/scheduler/dirsvc.c +++ b/scheduler/dirsvc.c @@ -1,5 +1,5 @@ /* - * "$Id: dirsvc.c 7003 2007-10-01 23:10:13Z mike $" + * "$Id: dirsvc.c 7676 2008-06-18 23:42:37Z mike $" * * Directory services routines for the Common UNIX Printing System (CUPS). * @@ -29,7 +29,6 @@ * cupsdStopBrowsing() - Stop sending and receiving broadcast * information. * cupsdStopPolling() - Stop polling servers as needed. - * cupsdUpdateDNSSDBrowse() - Handle DNS-SD queries. * cupsdUpdateDNSSDName() - Update the computer name we use for * browsing... * cupsdUpdateLDAPBrowse() - Scan for new printers via LDAP... @@ -44,6 +43,7 @@ * dnssdRegisterCallback() - DNSServiceRegister callback. * dnssdRegisterPrinter() - Start sending broadcast information for a * printer or update the broadcast contents. + * dnssdUpdate() - Handle DNS-SD queries. * get_hostconfig() - Get an /etc/hostconfig service setting. * is_local_queue() - Determine whether the URI points at a local * queue. @@ -128,6 +128,7 @@ static void dnssdRegisterCallback(DNSServiceRef sdRef, const char *name, const char *regtype, const char *domain, void *context); static void dnssdRegisterPrinter(cupsd_printer_t *p); +static void dnssdUpdate(void); #endif /* HAVE_DNSSD */ #ifdef HAVE_OPENLDAP @@ -1058,7 +1059,7 @@ cupsdStartBrowsing(void) */ cupsdAddSelect(DNSServiceRefSockFD(DNSSDRef), - (cupsd_selfunc_t)cupsdUpdateDNSSDBrowse, NULL, NULL); + (cupsd_selfunc_t)dnssdUpdate, NULL, NULL); /* * Then get the port we use for registrations. If we are not listening @@ -1476,23 +1477,6 @@ cupsdStopPolling(void) #ifdef HAVE_DNSSD /* - * 'cupsdUpdateDNSSDBrowse()' - Handle DNS-SD queries. - */ - -void -cupsdUpdateDNSSDBrowse(void) -{ - DNSServiceErrorType sdErr; /* Service discovery error */ - - - if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError) - cupsdLogMessage(CUPSD_LOG_ERROR, - "DNS Service Discovery registration error %d!", - sdErr); -} - - -/* * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing... */ @@ -2308,6 +2292,23 @@ dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ free(printer_txt); } } + + +/* + * 'dnssdUpdate()' - Handle DNS-SD queries. + */ + +static void +dnssdUpdate(void) +{ + DNSServiceErrorType sdErr; /* Service discovery error */ + + + if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError) + cupsdLogMessage(CUPSD_LOG_ERROR, + "DNS Service Discovery registration error %d!", + sdErr); +} #endif /* HAVE_DNSSD */ @@ -3324,7 +3325,7 @@ send_ldap_browse(cupsd_printer_t *p) /* I - Printer to register */ NULL }; - cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: %s\n", p->name); + cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: %s", p->name); /* * Everything in ldap is ** so we fudge around it... @@ -4278,5 +4279,5 @@ update_smb(int onoff) /* I - 1 = turn on, 0 = turn off */ /* - * End of "$Id: dirsvc.c 7003 2007-10-01 23:10:13Z mike $". + * End of "$Id: dirsvc.c 7676 2008-06-18 23:42:37Z mike $". */ diff --git a/scheduler/dirsvc.h b/scheduler/dirsvc.h index 16693c293..60c22c3bd 100644 --- a/scheduler/dirsvc.h +++ b/scheduler/dirsvc.h @@ -1,5 +1,5 @@ /* - * "$Id: dirsvc.h 6930 2007-09-08 00:28:06Z mike $" + * "$Id: dirsvc.h 7676 2008-06-18 23:42:37Z mike $" * * Directory services definitions for the Common UNIX Printing System * (CUPS) scheduler. @@ -188,7 +188,6 @@ extern void cupsdStartPolling(void); extern void cupsdStopBrowsing(void); extern void cupsdStopPolling(void); #ifdef HAVE_DNSSD -extern void cupsdUpdateDNSSDBrowse(void); extern void cupsdUpdateDNSSDName(void); #endif /* HAVE_DNSSD */ #ifdef HAVE_LDAP @@ -198,5 +197,5 @@ extern void cupsdUpdateSLPBrowse(void); /* - * End of "$Id: dirsvc.h 6930 2007-09-08 00:28:06Z mike $". + * End of "$Id: dirsvc.h 7676 2008-06-18 23:42:37Z mike $". */ diff --git a/scheduler/env.c b/scheduler/env.c index a7813f9f1..3eb9213a5 100644 --- a/scheduler/env.c +++ b/scheduler/env.c @@ -1,5 +1,5 @@ /* - * "$Id: env.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: env.c 7673 2008-06-18 22:31:26Z mike $" * * Environment management routines for the Common UNIX Printing System (CUPS). * @@ -185,7 +185,7 @@ cupsdSetEnv(const char *name, /* I - Name of variable */ cupsdSetStringf(common_env + i, "%s=%s", name, value); - cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSetEnv: %s\n", common_env[i]); + cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSetEnv: %s", common_env[i]); } @@ -236,5 +236,5 @@ clear_env(void) /* - * End of "$Id: env.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: env.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/filter.c b/scheduler/filter.c index 73344b6ae..6df0483f9 100644 --- a/scheduler/filter.c +++ b/scheduler/filter.c @@ -1,9 +1,9 @@ /* - * "$Id: filter.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: filter.c 7694 2008-06-26 00:23:20Z mike $" * * File type conversion routines for the Common UNIX Printing System (CUPS). * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -403,5 +403,5 @@ find_filters(mime_t *mime, /* I - MIME database */ /* - * End of "$Id: filter.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: filter.c 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/ipp.c b/scheduler/ipp.c index ac80acb7f..7562cd9e2 100644 --- a/scheduler/ipp.c +++ b/scheduler/ipp.c @@ -1,5 +1,5 @@ /* - * "$Id: ipp.c 7014 2007-10-10 21:57:43Z mike $" + * "$Id: ipp.c 7682 2008-06-21 00:06:02Z mike $" * * IPP routines for the Common UNIX Printing System (CUPS) scheduler. * @@ -796,8 +796,8 @@ cupsdTimeoutJob(cupsd_job_t *job) /* I - Job to timeout */ * Yes... */ - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Adding end banner page \"%s\".", - job->id, attr->values[1].string.text); + cupsdLogJob(job, CUPSD_LOG_INFO, "Adding end banner page \"%s\".", + attr->values[1].string.text); if ((kbytes = copy_banner(NULL, job, attr->values[1].string.text)) < 0) return (-1); @@ -1754,10 +1754,10 @@ add_job(cupsd_client_t *con, /* I - Client connection */ cupsdSetString(&attr->values[0].string.text, Classification); - cupsdLogMessage(CUPSD_LOG_NOTICE, "[Job %d] CLASSIFICATION FORCED " - "job-sheets=\"%s,none\", " - "job-originating-user-name=\"%s\"", - job->id, Classification, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED " + "job-sheets=\"%s,none\", " + "job-originating-user-name=\"%s\"", + Classification, job->username); } else if (attr->num_values == 2 && strcmp(attr->values[0].string.text, @@ -1771,11 +1771,11 @@ add_job(cupsd_client_t *con, /* I - Client connection */ cupsdSetString(&attr->values[1].string.text, attr->values[0].string.text); - cupsdLogMessage(CUPSD_LOG_NOTICE, "[Job %d] CLASSIFICATION FORCED " - "job-sheets=\"%s,%s\", " - "job-originating-user-name=\"%s\"", - job->id, attr->values[0].string.text, - attr->values[1].string.text, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED " + "job-sheets=\"%s,%s\", " + "job-originating-user-name=\"%s\"", + attr->values[0].string.text, + attr->values[1].string.text, job->username); } else if (strcmp(attr->values[0].string.text, Classification) && strcmp(attr->values[0].string.text, "none") && @@ -1784,18 +1784,18 @@ add_job(cupsd_client_t *con, /* I - Client connection */ strcmp(attr->values[1].string.text, "none")))) { if (attr->num_values == 1) - cupsdLogMessage(CUPSD_LOG_NOTICE, - "[Job %d] CLASSIFICATION OVERRIDDEN " - "job-sheets=\"%s\", " - "job-originating-user-name=\"%s\"", - job->id, attr->values[0].string.text, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, + "CLASSIFICATION OVERRIDDEN " + "job-sheets=\"%s\", " + "job-originating-user-name=\"%s\"", + attr->values[0].string.text, job->username); else - cupsdLogMessage(CUPSD_LOG_NOTICE, - "[Job %d] CLASSIFICATION OVERRIDDEN " - "job-sheets=\"%s,%s\",fffff " - "job-originating-user-name=\"%s\"", - job->id, attr->values[0].string.text, - attr->values[1].string.text, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, + "CLASSIFICATION OVERRIDDEN " + "job-sheets=\"%s,%s\",fffff " + "job-originating-user-name=\"%s\"", + attr->values[0].string.text, + attr->values[1].string.text, job->username); } } else if (strcmp(attr->values[0].string.text, Classification) && @@ -1824,18 +1824,18 @@ add_job(cupsd_client_t *con, /* I - Client connection */ } if (attr->num_values > 1) - cupsdLogMessage(CUPSD_LOG_NOTICE, - "[Job %d] CLASSIFICATION FORCED " - "job-sheets=\"%s,%s\", " - "job-originating-user-name=\"%s\"", - job->id, attr->values[0].string.text, - attr->values[1].string.text, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, + "CLASSIFICATION FORCED " + "job-sheets=\"%s,%s\", " + "job-originating-user-name=\"%s\"", + attr->values[0].string.text, + attr->values[1].string.text, job->username); else - cupsdLogMessage(CUPSD_LOG_NOTICE, - "[Job %d] CLASSIFICATION FORCED " - "job-sheets=\"%s\", " - "job-originating-user-name=\"%s\"", - job->id, Classification, job->username); + cupsdLogJob(job, CUPSD_LOG_NOTICE, + "CLASSIFICATION FORCED " + "job-sheets=\"%s\", " + "job-originating-user-name=\"%s\"", + Classification, job->username); } } @@ -1845,9 +1845,8 @@ add_job(cupsd_client_t *con, /* I - Client connection */ if (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT))) { - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] Adding start banner page \"%s\".", - job->id, attr->values[0].string.text); + cupsdLogJob(job, CUPSD_LOG_INFO, "Adding start banner page \"%s\".", + attr->values[0].string.text); if ((kbytes = copy_banner(con, job, attr->values[0].string.text)) < 0) { @@ -3669,8 +3668,7 @@ authenticate_job(cupsd_client_t *con, /* I - Client connection */ cupsdReleaseJob(job); - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Authenticated by \"%s\".", jobid, - con->username); + cupsdLogJob(job, CUPSD_LOG_INFO, "Authenticated by \"%s\".", con->username); } @@ -4011,10 +4009,10 @@ cancel_job(cupsd_client_t *con, /* I - Client connection */ if (purge) cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Purged by \"%s\".", jobid, - username); + username); else cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Canceled by \"%s\".", jobid, - username); + username); con->response->request.status.status_code = IPP_OK; } @@ -5690,8 +5688,8 @@ create_job(cupsd_client_t *con, /* I - Client connection */ * Save and log the job... */ - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Queued on \"%s\" by \"%s\".", - job->id, job->dest, job->username); + cupsdLogJob(job, CUPSD_LOG_INFO, "Queued on \"%s\" by \"%s\".", + job->dest, job->username); } @@ -7945,8 +7943,7 @@ hold_job(cupsd_client_t *con, /* I - Client connection */ "Job job-hold-until value changed by user."); } - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Held by \"%s\".", jobid, - username); + cupsdLogJob(job, CUPSD_LOG_INFO, "Held by \"%s\".", username); con->response->request.status.status_code = IPP_OK; } @@ -8519,11 +8516,10 @@ print_job(cupsd_client_t *con, /* I - Client connection */ * Log and save the job... */ - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] File of type %s/%s queued by \"%s\".", job->id, - filetype->super, filetype->type, job->username); - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] hold_until=%d", job->id, - (int)job->hold_until); + cupsdLogJob(job, CUPSD_LOG_INFO, + "File of type %s/%s queued by \"%s\".", + filetype->super, filetype->type, job->username); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "hold_until=%d", (int)job->hold_until); /* * Start the job if possible... @@ -8930,8 +8926,7 @@ release_job(cupsd_client_t *con, /* I - Client connection */ cupsdAddEvent(CUPSD_EVENT_JOB_STATE, cupsdFindDest(job->dest), job, "Job released by user."); - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Released by \"%s\".", jobid, - username); + cupsdLogJob(job, CUPSD_LOG_INFO, "Released by \"%s\".", username); con->response->request.status.status_code = IPP_OK; } @@ -9150,8 +9145,7 @@ restart_job(cupsd_client_t *con, /* I - Client connection */ cupsdRestartJob(job); - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Restarted by \"%s\".", jobid, - username); + cupsdLogJob(job, CUPSD_LOG_INFO, "Restarted by \"%s\".", username); con->response->request.status.status_code = IPP_OK; } @@ -9395,8 +9389,7 @@ save_krb5_creds(cupsd_client_t *con, /* I - Client connection */ cupsdSetStringf(&(job->ccname), "KRB5CCNAME=FILE:%s", krb5_cc_get_name(KerberosContext, job->ccache)); - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] save_krb5_creds: %s", job->id, - job->ccname); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "save_krb5_creds: %s", job->ccname); # endif /* HAVE_KRB5_CC_NEW_UNIQUE || HAVE_HEIMDAL */ } #endif /* HAVE_GSSAPI && HAVE_KRB5_H */ @@ -9439,6 +9432,7 @@ send_document(cupsd_client_t *con, /* I - Client connection */ struct stat fileinfo; /* File information */ int kbytes; /* Size of file */ int compression; /* Type of compression */ + int start_job; /* Start the job? */ cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_document(%p[%d], %s)", con, @@ -9608,7 +9602,7 @@ send_document(cupsd_client_t *con, /* I - Client connection */ ipp_attribute_t *doc_name; /* document-name attribute */ - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Auto-typing file...", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Auto-typing file..."); doc_name = ippFindAttribute(con->request, "document-name", IPP_TAG_NAME); filetype = mimeFileType(MimeDatabase, con->filename, @@ -9618,9 +9612,8 @@ send_document(cupsd_client_t *con, /* I - Client connection */ if (!filetype) filetype = mimeType(MimeDatabase, super, type); - cupsdLogMessage(CUPSD_LOG_DEBUG, - "[Job %d] Request file type is %s/%s.", job->id, - filetype->super, filetype->type); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Request file type is %s/%s.", + filetype->super, filetype->type); } else filetype = mimeType(MimeDatabase, super, type); @@ -9703,9 +9696,8 @@ send_document(cupsd_client_t *con, /* I - Client connection */ cupsdClearString(&con->filename); - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] File of type %s/%s queued by \"%s\".", job->id, - filetype->super, filetype->type, job->username); + cupsdLogJob(job, CUPSD_LOG_INFO, "File of type %s/%s queued by \"%s\".", + filetype->super, filetype->type, job->username); /* * Start the job if this is the last document... @@ -9743,16 +9735,7 @@ send_document(cupsd_client_t *con, /* I - Client connection */ job->dirty = 1; cupsdMarkDirty(CUPSD_DIRTY_JOBS); - /* - * Start the job if possible... Since cupsdCheckJobs() can cancel a - * job if it doesn't print, we need to re-find the job afterwards... - */ - - jobid = job->id; - - cupsdCheckJobs(); - - job = cupsdFindJob(jobid); + start_job = 1; } else { @@ -9769,6 +9752,8 @@ send_document(cupsd_client_t *con, /* I - Client connection */ cupsdMarkDirty(CUPSD_DIRTY_JOBS); } + + start_job = 0; } /* @@ -9784,10 +9769,17 @@ send_document(cupsd_client_t *con, /* I - Client connection */ ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_INTEGER, "job-id", jobid); ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state", - job ? job->state_value : IPP_JOB_CANCELED); + job->state_value); add_job_state_reasons(con, job); con->response->request.status.status_code = IPP_OK; + + /* + * Start the job if necessary... + */ + + if (start_job) + cupsdCheckJobs(); } @@ -11035,5 +11027,5 @@ validate_user(cupsd_job_t *job, /* I - Job */ /* - * End of "$Id: ipp.c 7014 2007-10-10 21:57:43Z mike $". + * End of "$Id: ipp.c 7682 2008-06-21 00:06:02Z mike $". */ diff --git a/scheduler/job.c b/scheduler/job.c index 68c68651f..890da3541 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -1,5 +1,5 @@ /* - * "$Id: job.c 7005 2007-10-01 23:45:48Z mike $" + * "$Id: job.c 7682 2008-06-21 00:06:02Z mike $" * * Job management routines for the Common UNIX Printing System (CUPS). * @@ -436,9 +436,9 @@ cupsdCheckJobs(void) * cancel the job... */ - cupsdLogMessage(CUPSD_LOG_WARN, - "[Job %d] Printer/class %s has gone away; canceling job!", - job->id, job->dest); + cupsdLogJob(job, CUPSD_LOG_WARN, + "Printer/class %s has gone away; canceling job!", + job->dest); cupsdAddEvent(CUPSD_EVENT_JOB_COMPLETED, job->printer, job, "Job canceled because the destination printer/class has " @@ -567,12 +567,12 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ ipp_attribute_t *attr; /* job-hold-until attribute */ - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] File %d is complete.", - job->id, job->current_file - 1); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "File %d is complete.", + job->current_file - 1); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] cupsdFinishJob: job->status is %d", - job->id, job->status); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "cupsdFinishJob: job->status is %d", + job->status); if (job->status_buffer && (job->status < 0 || job->current_file >= job->num_files)) @@ -583,9 +583,9 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ cupsdRemoveSelect(job->status_buffer->fd); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] cupsdFinishJob: Closing status pipes [ %d %d ]...", - job->id, job->status_pipes[0], job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "cupsdFinishJob: Closing status pipes [ %d %d ]...", + job->status_pipes[0], job->status_pipes[1]); cupsdClosePipe(job->status_pipes); cupsdStatBufDelete(job->status_buffer); @@ -618,15 +618,15 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ else exit_code = job->status; - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Backend returned status %d (%s)", - job->id, exit_code, - exit_code == CUPS_BACKEND_FAILED ? "failed" : - exit_code == CUPS_BACKEND_AUTH_REQUIRED ? - "authentication required" : - exit_code == CUPS_BACKEND_HOLD ? "hold job" : - exit_code == CUPS_BACKEND_STOP ? "stop printer" : - exit_code == CUPS_BACKEND_CANCEL ? "cancel job" : - exit_code < 0 ? "crashed" : "unknown"); + cupsdLogJob(job, CUPSD_LOG_INFO, "Backend returned status %d (%s)", + exit_code, + exit_code == CUPS_BACKEND_FAILED ? "failed" : + exit_code == CUPS_BACKEND_AUTH_REQUIRED ? + "authentication required" : + exit_code == CUPS_BACKEND_HOLD ? "hold job" : + exit_code == CUPS_BACKEND_STOP ? "stop printer" : + exit_code == CUPS_BACKEND_CANCEL ? "cancel job" : + exit_code < 0 ? "crashed" : "unknown"); /* * Do what needs to be done... @@ -680,10 +680,10 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ * Too many tries... */ - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Canceling job since it could not be " - "sent after %d tries.", - job->id, JobRetryLimit); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Canceling job since it could not be " + "sent after %d tries.", + JobRetryLimit); cupsdCancelJob(job, 0, IPP_JOB_ABORTED); } @@ -800,8 +800,7 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ * Filter had errors; stop job... */ - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Job stopped due to filter errors.", job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, "Job stopped due to filter errors."); cupsdStopJob(job, 1); job->dirty = 1; cupsdMarkDirty(CUPSD_DIRTY_JOBS); @@ -831,8 +830,7 @@ cupsdFinishJob(cupsd_job_t *job) /* I - Job */ * Close out this job... */ - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Completed successfully.", - job->id); + cupsdLogJob(job, CUPSD_LOG_INFO, "Completed successfully."); cupsdCancelJob(job, 0, IPP_JOB_COMPLETED); cupsdCheckJobs(); } @@ -1063,8 +1061,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((job->attrs = ippNew()) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Ran out of memory for job attributes!", job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, "Ran out of memory for job attributes!"); return; } @@ -1072,14 +1069,14 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ * Load job attributes... */ - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Loading attributes...", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Loading attributes..."); snprintf(jobfile, sizeof(jobfile), "%s/c%05d", RequestRoot, job->id); if ((fp = cupsFileOpen(jobfile, "r")) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to open job control file \"%s\" - %s!", - job->id, jobfile, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to open job control file \"%s\" - %s!", + jobfile, strerror(errno)); ippDelete(job->attrs); job->attrs = NULL; return; @@ -1087,9 +1084,9 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if (ippReadIO(fp, (ipp_iocb_t)cupsFileRead, 1, NULL, job->attrs) != IPP_DATA) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to read job control file \"%s\"!", - job->id, jobfile); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to read job control file \"%s\"!", + jobfile); cupsFileClose(fp); ippDelete(job->attrs); job->attrs = NULL; @@ -1106,10 +1103,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((job->state = ippFindAttribute(job->attrs, "job-state", IPP_TAG_ENUM)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Missing or bad job-state attribute in " - "control file!", - job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Missing or bad job-state attribute in control file!"); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1123,9 +1118,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((attr = ippFindAttribute(job->attrs, "job-printer-uri", IPP_TAG_URI)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] No job-printer-uri attribute in control file!", - job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "No job-printer-uri attribute in control file!"); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1135,9 +1129,9 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((dest = cupsdValidateDest(attr->values[0].string.text, &(job->dtype), &destptr)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to queue job for destination \"%s\"!", - job->id, attr->values[0].string.text); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to queue job for destination \"%s\"!", + attr->values[0].string.text); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1148,9 +1142,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ } else if ((destptr = cupsdFindDest(job->dest)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to queue job for destination \"%s\"!", - job->id, job->dest); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to queue job for destination \"%s\"!", job->dest); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1166,9 +1159,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((attr = ippFindAttribute(job->attrs, "job-priority", IPP_TAG_INTEGER)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Missing or bad job-priority attribute in " - "control file!", job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Missing or bad job-priority attribute in control file!"); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1183,9 +1175,9 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if ((attr = ippFindAttribute(job->attrs, "job-originating-user-name", IPP_TAG_NAME)) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Missing or bad job-originating-user-name " - "attribute in control file!", job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Missing or bad job-originating-user-name attribute in " + "control file!"); ippDelete(job->attrs); job->attrs = NULL; unlink(jobfile); @@ -1233,9 +1225,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if (access(jobfile, 0)) break; - cupsdLogMessage(CUPSD_LOG_DEBUG, - "[Job %d] Auto-typing document file \"%s\"...", - job->id, jobfile); + cupsdLogJob(job, CUPSD_LOG_DEBUG, + "Auto-typing document file \"%s\"...", jobfile); if (fileid > job->num_files) { @@ -1255,9 +1246,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ if (!compressions || !filetypes) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Ran out of memory for job file types!", - job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Ran out of memory for job file types!"); return; } @@ -1522,9 +1512,9 @@ cupsdSaveJob(cupsd_job_t *job) /* I - Job */ if ((fp = cupsFileOpen(filename, "w")) == NULL) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to create job control file \"%s\" - %s.", - job->id, filename, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to create job control file \"%s\" - %s.", + filename, strerror(errno)); return; } @@ -1535,8 +1525,7 @@ cupsdSaveJob(cupsd_job_t *job) /* I - Job */ if (ippWriteIO(fp, (ipp_iocb_t)cupsFileWrite, 1, NULL, job->attrs) != IPP_DATA) - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to write job control file!", job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to write job control file!"); cupsFileClose(fp); @@ -1756,8 +1745,7 @@ cupsdStopJob(cupsd_job_t *job, /* I - Job */ int i; /* Looping var */ - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] cupsdStopJob: force = %d", job->id, force); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "cupsdStopJob: force = %d", force); if (job->state_value != IPP_JOB_PROCESSING) return; @@ -1790,18 +1778,18 @@ cupsdStopJob(cupsd_job_t *job, /* I - Job */ cupsdDestroyProfile(job->profile); job->profile = NULL; - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing print pipes [ %d %d ]...", - job->id, job->print_pipes[0], job->print_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing print pipes [ %d %d ]...", + job->print_pipes[0], job->print_pipes[1]); cupsdClosePipe(job->print_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing back pipes [ %d %d ]...", - job->id, job->back_pipes[0], job->back_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing back pipes [ %d %d ]...", + job->back_pipes[0], job->back_pipes[1]); cupsdClosePipe(job->back_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing side pipes [ %d %d ]...", - job->id, job->side_pipes[0], job->side_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing side pipes [ %d %d ]...", + job->side_pipes[0], job->side_pipes[1]); cupsdClosePipe(job->side_pipes); @@ -1813,9 +1801,8 @@ cupsdStopJob(cupsd_job_t *job, /* I - Job */ cupsdRemoveSelect(job->status_buffer->fd); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] Closing status pipes [ %d %d ]...", job->id, - job->status_pipes[0], job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing status pipes [ %d %d ]...", + job->status_pipes[0], job->status_pipes[1]); cupsdClosePipe(job->status_pipes); cupsdStatBufDelete(job->status_buffer); @@ -2093,7 +2080,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ if (!job) { cupsdLogMessage(CUPSD_LOG_EMERG, - "[Job %d] Unable to allocate memory for job!", jobid); + "[Job %d] Unable to allocate memory for job!", jobid); break; } @@ -2107,7 +2094,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ job->status_pipes[0] = -1; job->status_pipes[1] = -1; - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Loading from cache...", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Loading from cache..."); } else if (!job) { @@ -2175,8 +2162,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ job->id); if (access(jobfile, 0)) { - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] Data files have gone away!", job->id); + cupsdLogJob(job, CUPSD_LOG_INFO, "Data files have gone away!"); job->num_files = 0; continue; } @@ -2186,9 +2172,9 @@ load_job_cache(const char *filename) /* I - job.cache filename */ if (!job->filetypes || !job->compressions) { - cupsdLogMessage(CUPSD_LOG_EMERG, - "[Job %d] Unable to allocate memory for %d files!", - job->id, job->num_files); + cupsdLogJob(job, CUPSD_LOG_EMERG, + "Unable to allocate memory for %d files!", + job->num_files); break; } } @@ -2226,9 +2212,9 @@ load_job_cache(const char *filename) /* I - job.cache filename */ * If the original MIME type is unknown, auto-type it! */ - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unknown MIME type %s/%s for file %d!", - job->id, super, type, number + 1); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unknown MIME type %s/%s for file %d!", + super, type, number + 1); snprintf(jobfile, sizeof(jobfile), "%s/d%05d-%03d", RequestRoot, job->id, number + 1); @@ -2519,14 +2505,12 @@ start_job(cupsd_job_t *job, /* I - Job ID */ static int optlength = 0; /* Length of option buffer */ - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: file = %d/%d", - job->id, job->current_file, job->num_files); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: file = %d/%d", + job->current_file, job->num_files); if (job->num_files == 0) { - cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] No files, canceling job!", - job->id); - + cupsdLogJob(job, CUPSD_LOG_ERROR, "No files, canceling job!"); cupsdCancelJob(job, 0, IPP_JOB_ABORTED); return; } @@ -2546,8 +2530,7 @@ start_job(cupsd_job_t *job, /* I - Job ID */ * filtering... */ - cupsdLogMessage(CUPSD_LOG_DEBUG, - "[Job %d] Sending job to queue tagged as raw...", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Sending job to queue tagged as raw..."); filters = NULL; } @@ -2562,9 +2545,9 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (!filters) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to convert file %d to printable format!", - job->current_file, job->id); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to convert file %d to printable format!", + job->current_file); cupsdLogMessage(CUPSD_LOG_INFO, "Hint: Do you have Ghostscript installed?"); @@ -2645,13 +2628,12 @@ start_job(cupsd_job_t *job, /* I - Job ID */ cupsArrayDelete(filters); - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] Holding because filter limit has been reached.", - job->id); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: file=%d, cost=%d, level=%d, limit=%d", - job->id, job->current_file, job->cost, FilterLevel, - FilterLimit); + cupsdLogJob(job, CUPSD_LOG_INFO, + "Holding because filter limit has been reached."); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: file=%d, cost=%d, level=%d, limit=%d", + job->current_file, job->cost, FilterLevel, + FilterLimit); return; } @@ -2674,9 +2656,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (!cupsArrayInsert(filters, &gziptoany_filter)) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to add decompression filter - %s", - job->id, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to add decompression filter - %s", strerror(errno)); cupsArrayDelete(filters); @@ -2711,9 +2692,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (!cupsArrayAdd(filters, &port_monitor)) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to add port monitor - %s", - job->id, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to add port monitor - %s", strerror(errno)); cupsArrayDelete(filters); @@ -2732,9 +2712,9 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (cupsArrayCount(filters) > MAX_FILTERS) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Too many filters (%d > %d), unable to print!", - job->id, cupsArrayCount(filters), MAX_FILTERS); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Too many filters (%d > %d), unable to print!", + cupsArrayCount(filters), MAX_FILTERS); cupsArrayDelete(filters); cupsdCancelJob(job, 0, IPP_JOB_STOPPED); @@ -2801,21 +2781,19 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (job->job_sheets == NULL) { - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] No job-sheets attribute.", - job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "No job-sheets attribute."); if ((job->job_sheets = ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_ZERO)) != NULL) - cupsdLogMessage(CUPSD_LOG_DEBUG, - "[Job %d] ... but someone added one without setting " - "job_sheets!", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, + "... but someone added one without setting job_sheets!"); } else if (job->job_sheets->num_values == 1) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] job-sheets=%s", job->id, - job->job_sheets->values[0].string.text); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "job-sheets=%s", + job->job_sheets->values[0].string.text); else - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] job-sheets=%s,%s", job->id, - job->job_sheets->values[0].string.text, - job->job_sheets->values[1].string.text); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "job-sheets=%s,%s", + job->job_sheets->values[0].string.text, + job->job_sheets->values[1].string.text); if (printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT)) banner_page = 0; @@ -2831,8 +2809,7 @@ start_job(cupsd_job_t *job, /* I - Job ID */ else banner_page = 0; - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] banner_page = %d", job->id, - banner_page); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "banner_page = %d", banner_page); /* * Building the options string is harder than it needs to be, but @@ -2853,9 +2830,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (optptr == NULL) { - cupsdLogMessage(CUPSD_LOG_CRIT, - "[Job %d] Unable to allocate %d bytes for option buffer!", - job->id, i); + cupsdLogJob(job, CUPSD_LOG_CRIT, + "Unable to allocate %d bytes for option buffer!", i); cupsArrayDelete(filters); @@ -3080,8 +3056,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ } for (i = 0; argv[i]; i ++) - cupsdLogMessage(CUPSD_LOG_DEBUG, - "[Job %d] argv[%d]=\"%s\"", job->id, i, argv[i]); + cupsdLogJob(job, CUPSD_LOG_DEBUG, + "argv[%d]=\"%s\"", i, argv[i]); /* * Create environment variable strings for the filters... @@ -3220,14 +3196,13 @@ start_job(cupsd_job_t *job, /* I - Job ID */ for (i = 0; i < envc; i ++) if (!strncmp(envp[i], "AUTH_", 5)) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"AUTH_%c****\"", - job->id, i, envp[i][5]); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"AUTH_%c****\"", i, + envp[i][5]); else if (strncmp(envp[i], "DEVICE_URI=", 11)) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"%s\"", - job->id, i, envp[i]); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"%s\"", i, envp[i]); else - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"DEVICE_URI=%s\"", - job->id, i, sani_uri); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"DEVICE_URI=%s\"", i, + sani_uri); if (printer->remote) job->current_file = job->num_files; @@ -3247,9 +3222,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ { if (cupsdOpenPipe(job->status_pipes)) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to create job status pipes - %s.", - job->id, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to create job status pipes - %s.", strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to create status pipes - %s.", strerror(errno)); @@ -3262,12 +3236,11 @@ start_job(cupsd_job_t *job, /* I - Job ID */ goto abort_job; } - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: status_pipes = [ %d %d ]", - job->id, job->status_pipes[0], job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: status_pipes = [ %d %d ]", + job->status_pipes[0], job->status_pipes[1]); - job->status_buffer = cupsdStatBufNew(job->status_pipes[0], "[Job %d]", - job->id); + job->status_buffer = cupsdStatBufNew(job->status_pipes[0], NULL); job->status_level = CUPSD_LOG_INFO; } @@ -3291,9 +3264,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ { if (cupsdOpenPipe(filterfds[slot])) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to create job filter pipes - %s.", - job->id, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to create job filter pipes - %s.", strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to create filter pipes - %s.", strerror(errno)); cupsdAddPrinterHistory(printer); @@ -3313,9 +3285,9 @@ start_job(cupsd_job_t *job, /* I - Job ID */ { if (cupsdOpenPipe(job->print_pipes)) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to create job backend pipes - %s.", - job->id, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to create job backend pipes - %s.", + strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to create backend pipes - %s.", strerror(errno)); cupsdAddPrinterHistory(printer); @@ -3350,9 +3322,9 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (job->print_pipes[1] < 0) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to open output file \"%s\" - %s.", - job->id, printer->device_uri, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, + "Unable to open output file \"%s\" - %s.", + printer->device_uri, strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to open output file \"%s\" - %s.", printer->device_uri, strerror(errno)); @@ -3369,38 +3341,34 @@ start_job(cupsd_job_t *job, /* I - Job ID */ } } - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: print_pipes = [ %d %d ]", - job->id, job->print_pipes[0], job->print_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: print_pipes = [ %d %d ]", + job->print_pipes[0], job->print_pipes[1]); } filterfds[slot][0] = job->print_pipes[0]; filterfds[slot][1] = job->print_pipes[1]; } - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: filter=\"%s\"", - job->id, command); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: filterfds[%d]=[ %d %d ]", - job->id, slot, filterfds[slot][0], filterfds[slot][1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filter=\"%s\"", command); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filterfds[%d]=[ %d %d ]", + slot, filterfds[slot][0], filterfds[slot][1]); pid = cupsdStartProcess(command, argv, envp, filterfds[!slot][0], filterfds[slot][1], job->status_pipes[1], job->back_pipes[0], job->side_pipes[0], 0, job->profile, job->filters + i); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing filter pipes for slot %d " - "[ %d %d ]...", - job->id, !slot, filterfds[!slot][0], filterfds[!slot][1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing filter pipes for slot %d [ %d %d ]...", + !slot, filterfds[!slot][0], filterfds[!slot][1]); cupsdClosePipe(filterfds[!slot]); if (pid == 0) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to start filter \"%s\" - %s.", - job->id, filter->filter, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to start filter \"%s\" - %s.", + filter->filter, strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to start filter \"%s\" - %s.", filter->filter, strerror(errno)); @@ -3414,14 +3382,15 @@ start_job(cupsd_job_t *job, /* I - Job ID */ goto abort_job; } - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Started filter %s (PID %d)", - job->id, command, pid); + cupsdLogJob(job, CUPSD_LOG_INFO, "Started filter %s (PID %d)", command, + pid); argv[6] = NULL; slot = !slot; } cupsArrayDelete(filters); + filters = NULL; /* * Finally, pipe the final output into a backend process if needed... @@ -3450,11 +3419,9 @@ start_job(cupsd_job_t *job, /* I - Job ID */ filterfds[slot][0] = -1; filterfds[slot][1] = -1; - cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: backend=\"%s\"", - job->id, command); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: filterfds[%d] = [ %d %d ]", job->id, - slot, filterfds[slot][0], filterfds[slot][1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: backend=\"%s\"", command); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filterfds[%d] = [ %d %d ]", + slot, filterfds[slot][0], filterfds[slot][1]); pid = cupsdStartProcess(command, argv, envp, filterfds[!slot][0], filterfds[slot][1], job->status_pipes[1], @@ -3463,9 +3430,8 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (pid == 0) { - cupsdLogMessage(CUPSD_LOG_ERROR, - "[Job %d] Unable to start backend \"%s\" - %s.", - job->id, method, strerror(errno)); + cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to start backend \"%s\" - %s.", + method, strerror(errno)); snprintf(printer->state_message, sizeof(printer->state_message), "Unable to start backend \"%s\" - %s.", method, strerror(errno)); @@ -3478,34 +3444,34 @@ start_job(cupsd_job_t *job, /* I - Job ID */ } else { - cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Started backend %s (PID %d)", - job->id, command, pid); + cupsdLogJob(job, CUPSD_LOG_INFO, "Started backend %s (PID %d)", + command, pid); } } if (job->current_file == job->num_files) { - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing print pipes [ %d %d ]...", - job->id, job->print_pipes[0], job->print_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing print pipes [ %d %d ]...", + job->print_pipes[0], job->print_pipes[1]); cupsdClosePipe(job->print_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing back pipes [ %d %d ]...", - job->id, job->back_pipes[0], job->back_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing back pipes [ %d %d ]...", + job->back_pipes[0], job->back_pipes[1]); cupsdClosePipe(job->back_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing side pipes [ %d %d ]...", - job->id, job->side_pipes[0], job->side_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing side pipes [ %d %d ]...", + job->side_pipes[0], job->side_pipes[1]); cupsdClosePipe(job->side_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing status output pipe %d...", - job->id, job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing status output pipe %d...", + job->status_pipes[1]); close(job->status_pipes[1]); job->status_pipes[1] = -1; @@ -3518,25 +3484,24 @@ start_job(cupsd_job_t *job, /* I - Job ID */ if (job->current_file == job->num_files) { - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing print pipes [ %d %d ]...", - job->id, job->print_pipes[0], job->print_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing print pipes [ %d %d ]...", + job->print_pipes[0], job->print_pipes[1]); cupsdClosePipe(job->print_pipes); - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing status output pipe %d...", - job->id, job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing status output pipe %d...", + job->status_pipes[1]); close(job->status_pipes[1]); job->status_pipes[1] = -1; } } - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing filter pipes for slot %d " - "[ %d %d ]...", - job->id, slot, filterfds[slot][0], filterfds[slot][1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing filter pipes for slot %d [ %d %d ]...", + slot, filterfds[slot][0], filterfds[slot][1]); cupsdClosePipe(filterfds[slot]); if (printer->remote && job->num_files > 1) @@ -3565,16 +3530,15 @@ start_job(cupsd_job_t *job, /* I - Job ID */ for (slot = 0; slot < 2; slot ++) { - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing filter pipes for slot %d " - "[ %d %d ]...", - job->id, slot, filterfds[slot][0], filterfds[slot][1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing filter pipes for slot %d [ %d %d ]...", + slot, filterfds[slot][0], filterfds[slot][1]); cupsdClosePipe(filterfds[slot]); } - cupsdLogMessage(CUPSD_LOG_DEBUG2, - "[Job %d] start_job: Closing status pipes [ %d %d ]...", - job->id, job->status_pipes[0], job->status_pipes[1]); + cupsdLogJob(job, CUPSD_LOG_DEBUG2, + "start_job: Closing status pipes [ %d %d ]...", + job->status_pipes[0], job->status_pipes[1]); cupsdClosePipe(job->status_pipes); cupsdStatBufDelete(job->status_buffer); @@ -3604,7 +3568,7 @@ unload_job(cupsd_job_t *job) /* I - Job */ if (!job->attrs) return; - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Unloading...", job->id); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "Unloading..."); ippDelete(job->attrs); @@ -3646,8 +3610,7 @@ update_job(cupsd_job_t *job) /* I - Job to check */ * job sheet count... */ - if (LogLevel >= CUPSD_LOG_DEBUG) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] PAGE: %s", job->id, message); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "PAGE: %s", message); if (job->sheets) { @@ -3677,11 +3640,11 @@ update_job(cupsd_job_t *job) /* I - Job to check */ * Quota limit exceeded, cancel job in progress immediately... */ - cupsdLogMessage(CUPSD_LOG_INFO, - "[Job %d] Canceled because pages exceed user %s " - "quota limit on printer %s (%s).", - job->id, job->username, job->printer->name, - job->printer->info); + cupsdLogJob(job, CUPSD_LOG_INFO, + "Canceled because pages exceed user %s " + "quota limit on printer %s (%s).", + job->username, job->printer->name, + job->printer->info); cupsdCancelJob(job, 1, IPP_JOB_CANCELED); return; @@ -3700,9 +3663,7 @@ update_job(cupsd_job_t *job) /* I - Job to check */ } else if (loglevel == CUPSD_LOG_STATE) { - if (LogLevel >= CUPSD_LOG_DEBUG) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] STATE: %s", job->id, - message); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "STATE: %s", message); if (!strcmp(message, "paused")) { @@ -3729,8 +3690,7 @@ update_job(cupsd_job_t *job) /* I - Job to check */ const char *attr; /* Attribute */ - if (LogLevel >= CUPSD_LOG_DEBUG) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] ATTR: %s", job->id, message); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "ATTR: %s", message); num_attrs = cupsParseOptions(message, 0, &attrs); @@ -3773,6 +3733,13 @@ update_job(cupsd_job_t *job) /* I - Job to check */ event |= CUPSD_EVENT_PRINTER_STATE; } + if ((attr = cupsGetOption("marker-message", num_attrs, attrs)) != NULL) + { + cupsdSetPrinterAttr(job->printer, "marker-message", (char *)attr); + job->printer->marker_time = time(NULL); + event |= CUPSD_EVENT_PRINTER_STATE; + } + if ((attr = cupsGetOption("marker-names", num_attrs, attrs)) != NULL) { cupsdSetPrinterAttr(job->printer, "marker-names", (char *)attr); @@ -3799,8 +3766,7 @@ update_job(cupsd_job_t *job) /* I - Job to check */ cups_option_t *keywords; /* Keywords */ - if (LogLevel >= CUPSD_LOG_DEBUG) - cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] PPD: %s", job->id, message); + cupsdLogJob(job, CUPSD_LOG_DEBUG, "PPD: %s", message); num_keywords = cupsParseOptions(message, 0, &keywords); @@ -3837,23 +3803,28 @@ update_job(cupsd_job_t *job) /* I - Job to check */ event |= CUPSD_EVENT_PRINTER_STATE; } #endif /* __APPLE__ */ - else if (loglevel <= job->status_level) + else { - /* - * Some message to show in the printer-state-message attribute... - */ + cupsdLogJob(job, loglevel, "%s", message); - if (loglevel != CUPSD_LOG_NOTICE) - job->status_level = loglevel; + if (loglevel <= job->status_level) + { + /* + * Some messages show in the printer-state-message attribute... + */ - strlcpy(job->printer->state_message, message, - sizeof(job->printer->state_message)); - cupsdAddPrinterHistory(job->printer); + if (loglevel != CUPSD_LOG_NOTICE) + job->status_level = loglevel; - if (loglevel <= CUPSD_LOG_INFO) - event |= CUPSD_EVENT_PRINTER_STATE; + strlcpy(job->printer->state_message, message, + sizeof(job->printer->state_message)); + cupsdAddPrinterHistory(job->printer); - update_job_attrs(job); + if (loglevel <= CUPSD_LOG_INFO) + event |= CUPSD_EVENT_PRINTER_STATE; + + update_job_attrs(job); + } } if (!strchr(job->status_buffer->buffer, '\n')) @@ -3971,5 +3942,5 @@ update_job_attrs(cupsd_job_t *job) /* I - Job to update */ /* - * End of "$Id: job.c 7005 2007-10-01 23:45:48Z mike $". + * End of "$Id: job.c 7682 2008-06-21 00:06:02Z mike $". */ diff --git a/scheduler/job.h b/scheduler/job.h index 09bf75ce0..e1e304324 100644 --- a/scheduler/job.h +++ b/scheduler/job.h @@ -1,5 +1,5 @@ /* - * "$Id: job.h 6755 2007-08-01 19:02:47Z mike $" + * "$Id: job.h 7468 2008-04-18 18:31:59Z mike $" * * Print job definitions for the Common UNIX Printing System (CUPS) scheduler. * @@ -131,5 +131,5 @@ extern void cupsdUnloadCompletedJobs(void); /* - * End of "$Id: job.h 6755 2007-08-01 19:02:47Z mike $". + * End of "$Id: job.h 7468 2008-04-18 18:31:59Z mike $". */ diff --git a/scheduler/libcupsmime.exp b/scheduler/libcupsmime.exp index bf2fa4c02..dfe99c290 100644 --- a/scheduler/libcupsmime.exp +++ b/scheduler/libcupsmime.exp @@ -10,8 +10,8 @@ _mimeFilterLookup _mimeFirstFilter _mimeFirstType _mimeLoad -_mimeMerge -_mimeNew +_mimeLoadFilters +_mimeLoadTypes _mimeNextFilter _mimeNextType _mimeNumFilters diff --git a/scheduler/listen.c b/scheduler/listen.c index 931bc9de1..361ff677c 100644 --- a/scheduler/listen.c +++ b/scheduler/listen.c @@ -1,5 +1,5 @@ /* - * "$Id: listen.c 6788 2007-08-13 17:20:14Z mike $" + * "$Id: listen.c 7673 2008-06-18 22:31:26Z mike $" * * Server listening routines for the Common UNIX Printing System (CUPS) * scheduler. @@ -151,7 +151,7 @@ cupsdStartListening(void) if ((ServerAddrs = httpAddrGetList(ServerName, AF_UNSPEC, NULL)) == NULL) cupsdLogMessage(CUPSD_LOG_ERROR, - "Unable to find IP address for server name \"%s\"!\n", + "Unable to find IP address for server name \"%s\"!", ServerName); /* @@ -428,5 +428,5 @@ cupsdStopListening(void) /* - * End of "$Id: listen.c 6788 2007-08-13 17:20:14Z mike $". + * End of "$Id: listen.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/log.c b/scheduler/log.c index 4a21b0856..fde21215e 100644 --- a/scheduler/log.c +++ b/scheduler/log.c @@ -1,5 +1,5 @@ /* - * "$Id: log.c 6875 2007-08-27 23:25:06Z mike $" + * "$Id: log.c 7697 2008-06-27 15:56:00Z mike $" * * Log file routines for the Common UNIX Printing System (CUPS). * @@ -16,10 +16,13 @@ * * cupsdGetDateTime() - Returns a pointer to a date/time string. * cupsdLogGSSMessage() - Log a GSSAPI error... + * cupsdLogJob() - Log a job message. * cupsdLogMessage() - Log a message to the error log file. * cupsdLogPage() - Log a page to the page log file. * cupsdLogRequest() - Log an HTTP request in Common Log Format. + * cupsdWriteErrorLog() - Write a line to the ErrorLog. * check_log_file() - Open/rotate a log file if it needs it. + * format_log_line() - Format a line for a log file. */ /* @@ -32,10 +35,19 @@ /* + * Local globals... + */ + +static int log_linesize = 0; /* Size of line for output file */ +static char *log_line = NULL; /* Line for output file */ + + +/* * Local functions... */ -static int check_log_file(cups_file_t **, const char *); +static int check_log_file(cups_file_t **lf, const char *logname); +static char *format_log_line(const char *message, va_list ap); /* @@ -157,176 +169,94 @@ cupsdLogGSSMessage( /* - * 'cupsdLogMessage()' - Log a message to the error log file. + * 'cupsdLogJob()' - Log a job message. */ int /* O - 1 on success, 0 on error */ -cupsdLogMessage(int level, /* I - Log level */ - const char *message, /* I - printf-style message string */ - ...) /* I - Additional args as needed */ +cupsdLogJob(cupsd_job_t *job, /* I - Job */ + int level, /* I - Log level */ + const char *message, /* I - Printf-style message string */ + ...) /* I - Additional arguments as needed */ { - int len; /* Length of message */ va_list ap; /* Argument pointer */ - static const char levels[] = /* Log levels... */ - { - ' ', - 'X', - 'A', - 'C', - 'E', - 'W', - 'N', - 'I', - 'D', - 'd' - }; -#ifdef HAVE_VSYSLOG - static const int syslevels[] = /* SYSLOG levels... */ - { - 0, - LOG_EMERG, - LOG_ALERT, - LOG_CRIT, - LOG_ERR, - LOG_WARNING, - LOG_NOTICE, - LOG_INFO, - LOG_DEBUG, - LOG_DEBUG - }; -#endif /* HAVE_VSYSLOG */ - static int linesize = 0; /* Size of line for output file */ - static char *line = NULL; /* Line for output file */ + char jobmsg[1024], /* Format string for job message */ + *line; /* Message line */ /* * See if we want to log this message... */ - if (TestConfigFile) - { - if (level <= CUPSD_LOG_WARN) - { - va_start(ap, message); - vfprintf(stderr, message, ap); - putc('\n', stderr); - va_end(ap); - } - + if (TestConfigFile || level > LogLevel || !ErrorLog) return (1); - } if (level > LogLevel || !ErrorLog) return (1); -#ifdef HAVE_VSYSLOG - /* - * See if we are logging errors via syslog... - */ - - if (!strcmp(ErrorLog, "syslog")) - { - va_start(ap, message); - vsyslog(syslevels[level], message, ap); - va_end(ap); - - return (1); - } -#endif /* HAVE_VSYSLOG */ - - /* - * Not using syslog; check the log file... - */ - - if (!check_log_file(&ErrorFile, ErrorLog)) - return (0); - /* - * Print the log level and date/time... + * Format and write the log message... */ - cupsFilePrintf(ErrorFile, "%c %s ", levels[level], cupsdGetDateTime(time(NULL))); + snprintf(jobmsg, sizeof(jobmsg), "[Job %d] %s", job->id, message); - /* - * Allocate the line buffer as needed... - */ + va_start(ap, message); + line = format_log_line(jobmsg, ap); + va_end(ap); - if (!linesize) - { - linesize = 8192; - line = malloc(linesize); + if (line) + return (cupsdWriteErrorLog(level, line)); + else + return (cupsdWriteErrorLog(CUPSD_LOG_ERROR, + "Unable to allocate memory for log line!")); +} - if (!line) - { - cupsFilePrintf(ErrorFile, - "ERROR: Unable to allocate memory for line - %s\n", - strerror(errno)); - cupsFileFlush(ErrorFile); - return (0); - } - } +/* + * 'cupsdLogMessage()' - Log a message to the error log file. + */ - /* - * Format the log message... - */ +int /* O - 1 on success, 0 on error */ +cupsdLogMessage(int level, /* I - Log level */ + const char *message, /* I - printf-style message string */ + ...) /* I - Additional args as needed */ +{ + va_list ap; /* Argument pointer */ + char *line; /* Message line */ - va_start(ap, message); - len = vsnprintf(line, linesize, message, ap); - va_end(ap); /* - * Resize the buffer as needed... + * See if we want to log this message... */ - if (len >= linesize) + if (TestConfigFile) { - char *temp; /* Temporary string pointer */ - - - len ++; - - if (len < 8192) - len = 8192; - else if (len > 65536) - len = 65536; - - temp = realloc(line, len); - - if (temp) + if (level <= CUPSD_LOG_WARN) { - line = temp; - linesize = len; + va_start(ap, message); + vfprintf(stderr, message, ap); + putc('\n', stderr); + va_end(ap); } - va_start(ap, message); - len = vsnprintf(line, linesize, message, ap); - va_end(ap); + return (1); } - if (len >= linesize) - len = linesize - 1; - - /* - * Then the log message... - */ - - cupsFilePuts(ErrorFile, line); - - /* - * Then a newline... - */ - - if (len > 0 && line[len - 1] != '\n') - cupsFilePutChar(ErrorFile, '\n'); + if (level > LogLevel || !ErrorLog) + return (1); /* - * Flush the line to the file and return... + * Format and write the log message... */ - cupsFileFlush(ErrorFile); + va_start(ap, message); + line = format_log_line(message, ap); + va_end(ap); - return (1); + if (line) + return (cupsdWriteErrorLog(level, line)); + else + return (cupsdWriteErrorLog(CUPSD_LOG_ERROR, + "Unable to allocate memory for log line!")); } @@ -414,8 +344,10 @@ cupsdLogPage(cupsd_job_t *job, /* I - Job being printed */ * Pull the name from inside the brackets... */ - memcpy(name, format + 1, nameend - format - 2); - name[nameend - format - 2] = '\0'; + memcpy(name, format + 1, nameend - format - 1); + name[nameend - format - 1] = '\0'; + + format = nameend; if ((attr = ippFindAttribute(job->attrs, name, IPP_TAG_ZERO)) != NULL) @@ -424,8 +356,6 @@ cupsdLogPage(cupsd_job_t *job, /* I - Job being printed */ * Add the attribute value... */ - format = nameend; - for (i = 0; i < attr->num_values && bufptr < (buffer + sizeof(buffer) - 1); @@ -607,6 +537,75 @@ cupsdLogRequest(cupsd_client_t *con, /* I - Request to log */ /* + * 'cupsdWriteErrorLog()' - Write a line to the ErrorLog. + */ + +int /* O - 1 on success, 0 on failure */ +cupsdWriteErrorLog(int level, /* I - Log level */ + const char *message) /* I - Message string */ +{ + static const char levels[] = /* Log levels... */ + { + ' ', + 'X', + 'A', + 'C', + 'E', + 'W', + 'N', + 'I', + 'D', + 'd' + }; +#ifdef HAVE_VSYSLOG + static const int syslevels[] = /* SYSLOG levels... */ + { + 0, + LOG_EMERG, + LOG_ALERT, + LOG_CRIT, + LOG_ERR, + LOG_WARNING, + LOG_NOTICE, + LOG_INFO, + LOG_DEBUG, + LOG_DEBUG + }; +#endif /* HAVE_VSYSLOG */ + + +#ifdef HAVE_VSYSLOG + /* + * See if we are logging errors via syslog... + */ + + if (!strcmp(ErrorLog, "syslog")) + { + syslog(syslevels[level], "%s", message); + return (1); + } +#endif /* HAVE_VSYSLOG */ + + /* + * Not using syslog; check the log file... + */ + + if (!check_log_file(&ErrorFile, ErrorLog)) + return (0); + + /* + * Write the log message... + */ + + cupsFilePrintf(ErrorFile, "%c %s %s\n", levels[level], + cupsdGetDateTime(time(NULL)), message); + cupsFileFlush(ErrorFile); + + return (1); +} + + +/* * 'check_log_file()' - Open/rotate a log file if it needs it. */ @@ -765,5 +764,70 @@ check_log_file(cups_file_t **lf, /* IO - Log file */ /* - * End of "$Id: log.c 6875 2007-08-27 23:25:06Z mike $". + * 'format_log_line()' - Format a line for a log file. + * + * This function resizes a global string buffer as needed. Each call returns + * a pointer to this buffer, so the contents are only good until the next call + * to format_log_line()... + */ + +static char * /* O - Text or NULL on error */ +format_log_line(const char *message, /* I - Printf-style format string */ + va_list ap) /* I - Argument list */ +{ + int len; /* Length of formatted line */ + + + /* + * Allocate the line buffer as needed... + */ + + if (!log_linesize) + { + log_linesize = 8192; + log_line = malloc(log_linesize); + + if (!log_line) + return (NULL); + } + + /* + * Format the log message... + */ + + len = vsnprintf(log_line, log_linesize, message, ap); + + /* + * Resize the buffer as needed... + */ + + if (len >= log_linesize) + { + char *temp; /* Temporary string pointer */ + + + len ++; + + if (len < 8192) + len = 8192; + else if (len > 65536) + len = 65536; + + temp = realloc(log_line, len); + + if (temp) + { + log_line = temp; + log_linesize = len; + } + + len = vsnprintf(log_line, log_linesize, message, ap); + } + + return (log_line); +} + + +/* + * End of "$Id: log.c 7697 2008-06-27 15:56:00Z mike $". */ diff --git a/scheduler/main.c b/scheduler/main.c index 54334523b..e3319467a 100644 --- a/scheduler/main.c +++ b/scheduler/main.c @@ -1,5 +1,5 @@ /* - * "$Id: main.c 6914 2007-09-05 21:05:04Z mike $" + * "$Id: main.c 7681 2008-06-20 21:06:02Z mike $" * * Scheduler main loop for the Common UNIX Printing System (CUPS). * @@ -489,7 +489,7 @@ main(int argc, /* I - Number of command-line args */ { snprintf(tempfile, sizeof(tempfile), "%s/%s", TempDir, dent->filename); - if (cupsdRemoveFile(tempfile)) + if (unlink(tempfile)) cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to remove temporary file \"%s\" - %s", tempfile, strerror(errno)); @@ -2019,5 +2019,5 @@ usage(int status) /* O - Exit status */ /* - * End of "$Id: main.c 6914 2007-09-05 21:05:04Z mike $". + * End of "$Id: main.c 7681 2008-06-20 21:06:02Z mike $". */ diff --git a/scheduler/mime.c b/scheduler/mime.c index cee81209e..890f2ea06 100644 --- a/scheduler/mime.c +++ b/scheduler/mime.c @@ -1,5 +1,5 @@ /* - * "$Id: mime.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: mime.c 7694 2008-06-26 00:23:20Z mike $" * * MIME database file routines for the Common UNIX Printing System (CUPS). * @@ -72,6 +72,7 @@ static void load_convs(mime_t *mime, const char *filename, const char *filterpath, cups_array_t *filtercache); static void load_types(mime_t *mime, const char *filename); +static mime_t *mime_new(void); /* @@ -192,73 +193,50 @@ mimeFirstType(mime_t *mime) /* I - MIME database */ /* * 'mimeLoad()' - Create a new MIME database from disk. + * + * This function uses @link mimeLoadFilters@ and @link mimeLoadTypes@ to + * create a MIME database from a single directory. */ mime_t * /* O - New MIME database */ mimeLoad(const char *pathname, /* I - Directory to load */ const char *filterpath) /* I - Directory to load */ { - return (mimeMerge(NULL, pathname, filterpath)); + return (mimeLoadFilters(mimeLoadTypes(NULL, pathname), pathname, filterpath)); } /* - * 'mimeMerge()' - Merge a MIME database from disk with the current one. + * 'mimeLoadFilters()' - Load filter definitions from disk. + * + * This function loads all of the .convs files from the specified directory. + * Use @link mimeLoadTypes@ to load all types before you load the filters. */ -mime_t * /* O - Updated MIME database */ -mimeMerge(mime_t *mime, /* I - MIME database to add to */ - const char *pathname, /* I - Directory to load */ - const char *filterpath) /* I - Directory to load */ +mime_t * /* O - MIME database */ +mimeLoadFilters(mime_t *mime, /* I - MIME database */ + const char *pathname, /* I - Directory to load from */ + const char *filterpath) /* I - Default filter program directory */ { cups_dir_t *dir; /* Directory */ cups_dentry_t *dent; /* Directory entry */ - char filename[1024]; /* Full filename of types/converts file */ + char filename[1024]; /* Full filename of .convs file */ cups_array_t *filtercache; /* Filter cache */ /* - * First open the directory specified by pathname... Return NULL if nothing - * was read or if the pathname is NULL... + * Range check input... */ - if (!pathname) - return (NULL); - - if ((dir = cupsDirOpen(pathname)) == NULL) - return (NULL); + if (!mime || !pathname || !filterpath) + return (mime); /* - * If "mime" is NULL, make a new, blank database... + * Then open the directory specified by pathname... */ - if (!mime) - mime = mimeNew(); - if (!mime) - { - cupsDirClose(dir); - return (NULL); - } - - /* - * Read all the .types files... - */ - - while ((dent = cupsDirRead(dir)) != NULL) - { - if (strlen(dent->filename) > 6 && - !strcmp(dent->filename + strlen(dent->filename) - 6, ".types")) - { - /* - * Load a mime.types file... - */ - - snprintf(filename, sizeof(filename), "%s/%s", pathname, dent->filename); - load_types(mime, filename); - } - } - - cupsDirRewind(dir); + if ((dir = cupsDirOpen(pathname)) == NULL) + return (mime); /* * Read all the .convs files... @@ -289,13 +267,62 @@ mimeMerge(mime_t *mime, /* I - MIME database to add to */ /* - * 'mimeNew()' - Create a new, empty MIME database. + * 'mimeLoadTypes()' - Load type definitions from disk. + * + * This function loads all of the .types files from the specified directory. + * Use @link mimeLoadFilters@ to load all filters after you load the types. */ mime_t * /* O - MIME database */ -mimeNew(void) +mimeLoadTypes(mime_t *mime, /* I - MIME database or @code NULL@ to create a new one */ + const char *pathname) /* I - Directory to load from */ { - return ((mime_t *)calloc(1, sizeof(mime_t))); + cups_dir_t *dir; /* Directory */ + cups_dentry_t *dent; /* Directory entry */ + char filename[1024]; /* Full filename of .types file */ + + + /* + * First open the directory specified by pathname... + */ + + if ((dir = cupsDirOpen(pathname)) == NULL) + return (mime); + + /* + * If "mime" is NULL, make a new, empty database... + */ + + if (!mime) + mime = mime_new(); + + if (!mime) + { + cupsDirClose(dir); + return (NULL); + } + + /* + * Read all the .types files... + */ + + while ((dent = cupsDirRead(dir)) != NULL) + { + if (strlen(dent->filename) > 6 && + !strcmp(dent->filename + strlen(dent->filename) - 6, ".types")) + { + /* + * Load a mime.types file... + */ + + snprintf(filename, sizeof(filename), "%s/%s", pathname, dent->filename); + load_types(mime, filename); + } + } + + cupsDirClose(dir); + + return (mime); } @@ -474,6 +501,10 @@ load_convs(mime_t *mime, /* I - MIME database */ int cost; /* Cost of filter */ + DEBUG_printf(("load_convs(mime=%p, filename=\"%s\", filterpath=\"%s\", " + "filtercache=%p)\n", mime, filename, filterpath, filtercache)); + + /* * First try to open the file... */ @@ -481,8 +512,6 @@ load_convs(mime_t *mime, /* I - MIME database */ if ((fp = cupsFileOpen(filename, "r")) == NULL) return; - DEBUG_printf(("\"%s\":\n", filename)); - /* * Then read each line from the file, skipping any comments in the file... */ @@ -493,8 +522,6 @@ load_convs(mime_t *mime, /* I - MIME database */ * Skip blank lines and lines starting with a #... */ - DEBUG_puts(line); - if (!line[0] || line[0] == '#') continue; @@ -544,7 +571,8 @@ load_convs(mime_t *mime, /* I - MIME database */ if ((dsttype = mimeType(mime, super, type)) == NULL) { - DEBUG_printf((" Destination type %s/%s not found!\n", super, type)); + DEBUG_printf(("load_convs: Destination type %s/%s not found!\n", + super, type)); continue; } @@ -578,7 +606,8 @@ load_convs(mime_t *mime, /* I - MIME database */ if (!add_fcache(filtercache, filter, filterpath)) { - DEBUG_printf((" Filter %s not found in %s!\n", filter, filterpath)); + DEBUG_printf(("load_convs: Filter %s not found in %s!\n", filter, + filterpath)); continue; } } @@ -653,6 +682,8 @@ load_types(mime_t *mime, /* I - MIME database */ mime_type_t *typeptr; /* New MIME type */ + DEBUG_printf(("load_types(mime=%p, filename=\"%s\")\n", mime, filename)); + /* * First try to open the file... */ @@ -660,8 +691,6 @@ load_types(mime_t *mime, /* I - MIME database */ if ((fp = cupsFileOpen(filename, "r")) == NULL) return; - DEBUG_printf(("\"%s\":\n", filename)); - /* * Then read each line from the file, skipping any comments in the file... */ @@ -672,8 +701,6 @@ load_types(mime_t *mime, /* I - MIME database */ * Skip blank lines and lines starting with a #... */ - DEBUG_puts(line); - if (!line[0] || line[0] == '#') continue; @@ -732,5 +759,16 @@ load_types(mime_t *mime, /* I - MIME database */ /* - * End of "$Id: mime.c 6649 2007-07-11 21:46:42Z mike $". + * 'mime_new()' - Create a new, empty MIME database. + */ + +static mime_t * /* O - MIME database */ +mime_new(void) +{ + return ((mime_t *)calloc(1, sizeof(mime_t))); +} + + +/* + * End of "$Id: mime.c 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/mime.h b/scheduler/mime.h index 975ab79f4..019496495 100644 --- a/scheduler/mime.h +++ b/scheduler/mime.h @@ -1,5 +1,5 @@ /* - * "$Id: mime.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: mime.h 7694 2008-06-26 00:23:20Z mike $" * * MIME type/conversion database definitions for the Common UNIX Printing System (CUPS). * @@ -113,9 +113,9 @@ typedef struct _mime_s /**** MIME Database ****/ extern void mimeDelete(mime_t *mime); extern mime_t *mimeLoad(const char *pathname, const char *filterpath); -extern mime_t *mimeMerge(mime_t *mime, const char *pathname, - const char *filterpath); -extern mime_t *mimeNew(void); +extern mime_t *mimeLoadFilters(mime_t *mime, const char *pathname, + const char *filterpath); +extern mime_t *mimeLoadTypes(mime_t *mime, const char *pathname); extern mime_type_t *mimeAddType(mime_t *mime, const char *super, const char *type); @@ -147,5 +147,5 @@ extern int mimeNumFilters(mime_t *mime); #endif /* !_CUPS_MIME_H_ */ /* - * End of "$Id: mime.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: mime.h 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/policy.c b/scheduler/policy.c index d550af4c8..4fefbd16a 100644 --- a/scheduler/policy.c +++ b/scheduler/policy.c @@ -1,5 +1,5 @@ /* - * "$Id: policy.c 6895 2007-08-30 00:09:27Z mike $" + * "$Id: policy.c 7673 2008-06-18 22:31:26Z mike $" * * Policy routines for the Common UNIX Printing System (CUPS). * @@ -276,7 +276,7 @@ cupsdFindPolicyOp(cupsd_policy_t *p, /* I - Policy */ *po; /* Current policy operation */ - cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdFindPolicyOp(p=%p, op=%x(%s))\n", + cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdFindPolicyOp(p=%p, op=%x(%s))", p, op, ippOpString(op)); /* @@ -348,5 +348,5 @@ hash_op(cupsd_location_t *op) /* I - Operation */ /* - * End of "$Id: policy.c 6895 2007-08-30 00:09:27Z mike $". + * End of "$Id: policy.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/printers.c b/scheduler/printers.c index c2ae13f2c..c5f4a91a9 100644 --- a/scheduler/printers.c +++ b/scheduler/printers.c @@ -1,5 +1,5 @@ /* - * "$Id: printers.c 7608 2008-05-21 01:37:21Z mike $" + * "$Id: printers.c 7677 2008-06-19 23:22:19Z mike $" * * Printer routines for the Common UNIX Printing System (CUPS). * @@ -1569,6 +1569,24 @@ cupsdSaveAllPrinters(void) cupsFilePuts(fp, "\n"); } + if ((marker = ippFindAttribute(printer->attrs, "marker-message", + IPP_TAG_TEXT)) != NULL) + { + cupsFilePrintf(fp, "Attribute %s ", marker->name); + + if (!ptr && (ptr = strchr(marker->values[0].string.text, '#')) != NULL) + { + cupsFileWrite(fp, marker->values[0].string.text, + ptr - marker->values[0].string.text); + cupsFilePutChar(fp, '\\'); + cupsFilePuts(fp, ptr); + } + else + cupsFilePuts(fp, marker->values[0].string.text); + + cupsFilePuts(fp, "\n"); + } + if ((marker = ippFindAttribute(printer->attrs, "marker-names", IPP_TAG_NAME)) != NULL) { @@ -1860,6 +1878,8 @@ cupsdSetPrinterAttr( if (!strcmp(name, "marker-types")) value_tag = IPP_TAG_KEYWORD; + else if (!strcmp(name, "marker-message")) + value_tag = IPP_TAG_TEXT; else value_tag = IPP_TAG_NAME; @@ -1871,7 +1891,12 @@ cupsdSetPrinterAttr( } if (attr) + { + for (i = 0; i < attr->num_values; i ++) + _cupsStrFree(attr->values[i].string.text); + attr->num_values = count; + } else attr = ippAddStrings(p->attrs, IPP_TAG_PRINTER, value_tag, name, count, NULL, NULL); @@ -1889,7 +1914,6 @@ cupsdSetPrinterAttr( if ((ptr = strchr(value, ',')) != NULL) *ptr++ = '\0'; - _cupsStrFree(attr->values[i].string.text); attr->values[i].string.text = _cupsStrAlloc(value); if (ptr) @@ -4311,5 +4335,5 @@ write_irix_state(cupsd_printer_t *p) /* I - Printer to update */ /* - * End of "$Id: printers.c 7608 2008-05-21 01:37:21Z mike $". + * End of "$Id: printers.c 7677 2008-06-19 23:22:19Z mike $". */ diff --git a/scheduler/printers.h b/scheduler/printers.h index b14b1b196..0853b2eda 100644 --- a/scheduler/printers.h +++ b/scheduler/printers.h @@ -1,5 +1,5 @@ /* - * "$Id: printers.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: printers.h 7564 2008-05-15 00:57:43Z mike $" * * Printer definitions for the Common UNIX Printing System (CUPS) scheduler. * @@ -176,5 +176,5 @@ extern void cupsdWritePrintcap(void); /* - * End of "$Id: printers.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: printers.h 7564 2008-05-15 00:57:43Z mike $". */ diff --git a/scheduler/process.c b/scheduler/process.c index d37b07915..b0481296c 100644 --- a/scheduler/process.c +++ b/scheduler/process.c @@ -1,5 +1,5 @@ /* - * "$Id: process.c 6987 2007-09-25 15:43:44Z mike $" + * "$Id: process.c 7256 2008-01-25 00:48:54Z mike $" * * Process management routines for the Common UNIX Printing System (CUPS). * @@ -494,5 +494,5 @@ cupsd_requote(char *dst, /* I - Destination buffer */ /* - * End of "$Id: process.c 6987 2007-09-25 15:43:44Z mike $". + * End of "$Id: process.c 7256 2008-01-25 00:48:54Z mike $". */ diff --git a/scheduler/select.c b/scheduler/select.c index a2e1925d1..6f6843685 100644 --- a/scheduler/select.c +++ b/scheduler/select.c @@ -1,5 +1,5 @@ /* - * "$Id: select.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: select.c 7093 2007-11-30 19:09:36Z mike $" * * Select abstraction functions for the Common UNIX Printing System (CUPS). * @@ -1018,5 +1018,5 @@ find_fd(int fd) /* I - File descriptor */ /* - * End of "$Id: select.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: select.c 7093 2007-11-30 19:09:36Z mike $". */ diff --git a/scheduler/server.c b/scheduler/server.c index 9483ae658..d44e4ee73 100644 --- a/scheduler/server.c +++ b/scheduler/server.c @@ -1,5 +1,5 @@ /* - * "$Id: server.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: server.c 7468 2008-04-18 18:31:59Z mike $" * * Server start/stop routines for the Common UNIX Printing System (CUPS). * @@ -214,5 +214,5 @@ cupsdStopServer(void) /* - * End of "$Id: server.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: server.c 7468 2008-04-18 18:31:59Z mike $". */ diff --git a/scheduler/statbuf.c b/scheduler/statbuf.c index a650f867b..c4959cfbe 100644 --- a/scheduler/statbuf.c +++ b/scheduler/statbuf.c @@ -1,10 +1,10 @@ /* - * "$Id: statbuf.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: statbuf.c 7674 2008-06-18 23:18:32Z mike $" * * Status buffer routines for the Common UNIX Printing System (CUPS) * scheduler. * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2006 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -15,8 +15,8 @@ * * Contents: * - * cupsdStatBufNew() - Create a new status buffer. * cupsdStatBufDelete() - Destroy a status buffer. + * cupsdStatBufNew() - Create a new status buffer. * cupsdStatBufUpdate() - Update the status buffer. */ @@ -29,6 +29,30 @@ /* + * 'cupsdStatBufDelete()' - Destroy a status buffer. + */ + +void +cupsdStatBufDelete(cupsd_statbuf_t *sb) /* I - Status buffer */ +{ + /* + * Range check input... + */ + + if (!sb) + return; + + /* + * Close the status pipe and free memory used... + */ + + close(sb->fd); + + free(sb); +} + + +/* * 'cupsdStatBufNew()' - Create a new status buffer. */ @@ -90,30 +114,6 @@ cupsdStatBufNew(int fd, /* I - File descriptor of pipe */ /* - * 'cupsdStatBufDelete()' - Destroy a status buffer. - */ - -void -cupsdStatBufDelete(cupsd_statbuf_t *sb) /* I - Status buffer */ -{ - /* - * Range check input... - */ - - if (!sb) - return; - - /* - * Close the status pipe and free memory used... - */ - - close(sb->fd); - - free(sb); -} - - -/* * 'cupsdStatBufUpdate()' - Update the status buffer. */ @@ -288,20 +288,23 @@ cupsdStatBufUpdate(cupsd_statbuf_t *sb, /* I - Status buffer */ * Send it to the log file as needed... */ - if (*loglevel > CUPSD_LOG_NONE && - (*loglevel != CUPSD_LOG_INFO || LogLevel == CUPSD_LOG_DEBUG2)) + if (sb->prefix[0]) { - /* - * General status message; send it to the error_log file... - */ + if (*loglevel > CUPSD_LOG_NONE && + (*loglevel != CUPSD_LOG_INFO || LogLevel == CUPSD_LOG_DEBUG2)) + { + /* + * General status message; send it to the error_log file... + */ - if (message[0] == '[') - cupsdLogMessage(*loglevel, "%s", message); - else - cupsdLogMessage(*loglevel, "%s %s", sb->prefix, message); + if (message[0] == '[') + cupsdLogMessage(*loglevel, "%s", message); + else + cupsdLogMessage(*loglevel, "%s %s", sb->prefix, message); + } + else if (*loglevel < CUPSD_LOG_NONE && LogLevel == CUPSD_LOG_DEBUG2) + cupsdLogMessage(CUPSD_LOG_DEBUG2, "%s %s", sb->prefix, sb->buffer); } - else if (*loglevel < CUPSD_LOG_NONE && LogLevel == CUPSD_LOG_DEBUG2) - cupsdLogMessage(CUPSD_LOG_DEBUG2, "%s %s", sb->prefix, sb->buffer); /* * Copy the message to the line buffer... @@ -326,5 +329,5 @@ cupsdStatBufUpdate(cupsd_statbuf_t *sb, /* I - Status buffer */ /* - * End of "$Id: statbuf.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: statbuf.c 7674 2008-06-18 23:18:32Z mike $". */ diff --git a/scheduler/statbuf.h b/scheduler/statbuf.h index 385e68c9b..c42c6fdb7 100644 --- a/scheduler/statbuf.h +++ b/scheduler/statbuf.h @@ -1,10 +1,10 @@ /* - * "$Id: statbuf.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: statbuf.h 7674 2008-06-18 23:18:32Z mike $" * * Status buffer definitions for the Common UNIX Printing System (CUPS) * scheduler. * - * Copyright 2007 by Apple Inc. + * Copyright 2007-2008 by Apple Inc. * Copyright 1997-2005 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -39,12 +39,12 @@ typedef struct /**** Status buffer */ * Prototypes... */ -extern cupsd_statbuf_t *cupsdStatBufNew(int fd, const char *prefix, ...); extern void cupsdStatBufDelete(cupsd_statbuf_t *sb); +extern cupsd_statbuf_t *cupsdStatBufNew(int fd, const char *prefix, ...); extern char *cupsdStatBufUpdate(cupsd_statbuf_t *sb, int *loglevel, char *line, int linelen); /* - * End of "$Id: statbuf.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: statbuf.h 7674 2008-06-18 23:18:32Z mike $". */ diff --git a/scheduler/subscriptions.c b/scheduler/subscriptions.c index cea357fd3..4f92f873b 100644 --- a/scheduler/subscriptions.c +++ b/scheduler/subscriptions.c @@ -1,5 +1,5 @@ /* - * "$Id: subscriptions.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: subscriptions.c 7673 2008-06-18 22:31:26Z mike $" * * Subscription routines for the Common UNIX Printing System (CUPS) scheduler. * @@ -1363,7 +1363,7 @@ cupsd_send_notification( cupsdLogMessage(CUPSD_LOG_DEBUG2, - "cupsd_send_notification(sub=%p(%d), event=%p(%s))\n", + "cupsd_send_notification(sub=%p(%d), event=%p(%s))", sub, sub->id, event, cupsdEventName(event->event)); /* @@ -1616,5 +1616,5 @@ cupsd_update_notifier(void) /* - * End of "$Id: subscriptions.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: subscriptions.c 7673 2008-06-18 22:31:26Z mike $". */ diff --git a/scheduler/subscriptions.h b/scheduler/subscriptions.h index 7f112fa0c..ab0154b71 100644 --- a/scheduler/subscriptions.h +++ b/scheduler/subscriptions.h @@ -1,5 +1,5 @@ /* - * "$Id: subscriptions.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: subscriptions.h 7253 2008-01-23 22:18:15Z mike $" * * Subscription definitions for the Common UNIX Printing System (CUPS) scheduler. * @@ -163,5 +163,5 @@ extern void cupsdStopAllNotifiers(void); /* - * End of "$Id: subscriptions.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: subscriptions.h 7253 2008-01-23 22:18:15Z mike $". */ diff --git a/scheduler/sysman.c b/scheduler/sysman.c index b6d175142..cffb285a7 100644 --- a/scheduler/sysman.c +++ b/scheduler/sysman.c @@ -1,5 +1,5 @@ /* - * "$Id: sysman.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: sysman.c 7676 2008-06-18 23:42:37Z mike $" * * System management definitions for the Common UNIX Printing System (CUPS). * @@ -21,13 +21,13 @@ * doing something. * cupsdStartSystemMonitor() - Start monitoring for system change. * cupsdStopSystemMonitor() - Stop monitoring for system change. - * cupsdUpdateSystemMonitor() - Update the current system state. * sysEventThreadEntry() - A thread to receive power and computer * name change notifications. * sysEventPowerNotifier() - Handle power notification events. * sysEventConfigurationNotifier() - Computer name changed notification * callback. * sysEventTimerNotifier() - Handle delayed event notifications. + * sysUpdate() - Update the current system state. */ @@ -230,6 +230,7 @@ static void sysEventConfigurationNotifier(SCDynamicStoreRef store, CFArrayRef changedKeys, void *context); static void sysEventTimerNotifier(CFRunLoopTimerRef timer, void *context); +static void sysUpdate(void); /* @@ -249,8 +250,7 @@ cupsdStartSystemMonitor(void) return; } - cupsdAddSelect(SysEventPipes[0], (cupsd_selfunc_t)cupsdUpdateSystemMonitor, - NULL, NULL); + cupsdAddSelect(SysEventPipes[0], (cupsd_selfunc_t)sysUpdate, NULL, NULL); /* * Set non-blocking mode on the descriptor we will be receiving notification @@ -314,174 +314,6 @@ cupsdStopSystemMonitor(void) /* - * 'cupsdUpdateSystemMonitor()' - Update the current system state. - */ - -void -cupsdUpdateSystemMonitor(void) -{ - int i; /* Looping var */ - cupsd_sysevent_t sysevent; /* The system event */ - cupsd_printer_t *p; /* Printer information */ - - - /* - * Drain the event pipe... - */ - - while (read((int)SysEventPipes[0], &sysevent, sizeof(sysevent)) - == sizeof(sysevent)) - { - if (sysevent.event & SYSEVENT_CANSLEEP) - { - /* - * If there are active printers that don't have the connecting-to-device - * printer-state-reason then cancel the sleep request (i.e. this reason - * indicates a job that is not yet connected to the printer)... - */ - - for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); - p; - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - { - if (p->job) - { - for (i = 0; i < p->num_reasons; i ++) - if (!strcmp(p->reasons[i], "connecting-to-device")) - break; - - if (!p->num_reasons || i >= p->num_reasons) - break; - } - } - - if (p) - { - cupsdLogMessage(CUPSD_LOG_INFO, - "System sleep canceled because printer %s is active", - p->name); - IOCancelPowerChange(sysevent.powerKernelPort, - sysevent.powerNotificationID); - } - else - { - cupsdLogMessage(CUPSD_LOG_DEBUG, "System wants to sleep"); - IOAllowPowerChange(sysevent.powerKernelPort, - sysevent.powerNotificationID); - } - } - - if (sysevent.event & SYSEVENT_WILLSLEEP) - { - cupsdLogMessage(CUPSD_LOG_DEBUG, "System going to sleep"); - - Sleeping = 1; - - cupsdStopAllJobs(0); - - for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); - p; - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - { - if (p->type & CUPS_PRINTER_DISCOVERED) - { - cupsdLogMessage(CUPSD_LOG_DEBUG, - "Deleting remote destination \"%s\"", p->name); - cupsArraySave(Printers); - cupsdDeletePrinter(p, 0); - cupsArrayRestore(Printers); - } - else - { - cupsdLogMessage(CUPSD_LOG_DEBUG, - "Deregistering local printer \"%s\"", p->name); - cupsdDeregisterPrinter(p, 0); - } - } - - cupsdCleanDirty(); - - IOAllowPowerChange(sysevent.powerKernelPort, - sysevent.powerNotificationID); - } - - if (sysevent.event & SYSEVENT_WOKE) - { - cupsdLogMessage(CUPSD_LOG_DEBUG, "System woke from sleep"); - IOAllowPowerChange(sysevent.powerKernelPort, - sysevent.powerNotificationID); - Sleeping = 0; - cupsdCheckJobs(); - } - - if (sysevent.event & SYSEVENT_NETCHANGED) - { - if (!Sleeping) - { - cupsdLogMessage(CUPSD_LOG_DEBUG, - "System network configuration changed"); - - /* - * Resetting browse_time before calling cupsdSendBrowseList causes - * browse packets to be sent for local shared printers. - */ - - for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); - p; - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - p->browse_time = 0; - - cupsdSendBrowseList(); - cupsdRestartPolling(); - } - else - cupsdLogMessage(CUPSD_LOG_DEBUG, - "System network configuration changed; " - "ignored while sleeping"); - } - - if (sysevent.event & SYSEVENT_NAMECHANGED) - { - if (!Sleeping) - { - cupsdLogMessage(CUPSD_LOG_DEBUG, "Computer name changed"); - - /* - * De-register the individual printers... - */ - - for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); - p; - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - cupsdDeregisterPrinter(p, 1); - - /* - * Update the computer name... - */ - - cupsdUpdateDNSSDName(); - - /* - * Now re-register them... - */ - - for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); - p; - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - { - p->browse_time = 0; - cupsdRegisterPrinter(p); - } - } - else - cupsdLogMessage(CUPSD_LOG_DEBUG, - "Computer name changed; ignored while sleeping"); - } - } -} - - -/* * 'sysEventThreadEntry()' - A thread to receive power and computer name * change notifications. */ @@ -843,9 +675,177 @@ sysEventTimerNotifier( threadData->sysevent.event = 0; } } + + +/* + * 'sysUpdate()' - Update the current system state. + */ + +static void +sysUpdate(void) +{ + int i; /* Looping var */ + cupsd_sysevent_t sysevent; /* The system event */ + cupsd_printer_t *p; /* Printer information */ + + + /* + * Drain the event pipe... + */ + + while (read((int)SysEventPipes[0], &sysevent, sizeof(sysevent)) + == sizeof(sysevent)) + { + if (sysevent.event & SYSEVENT_CANSLEEP) + { + /* + * If there are active printers that don't have the connecting-to-device + * printer-state-reason then cancel the sleep request (i.e. this reason + * indicates a job that is not yet connected to the printer)... + */ + + for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); + p; + p = (cupsd_printer_t *)cupsArrayNext(Printers)) + { + if (p->job) + { + for (i = 0; i < p->num_reasons; i ++) + if (!strcmp(p->reasons[i], "connecting-to-device")) + break; + + if (!p->num_reasons || i >= p->num_reasons) + break; + } + } + + if (p) + { + cupsdLogMessage(CUPSD_LOG_INFO, + "System sleep canceled because printer %s is active", + p->name); + IOCancelPowerChange(sysevent.powerKernelPort, + sysevent.powerNotificationID); + } + else + { + cupsdLogMessage(CUPSD_LOG_DEBUG, "System wants to sleep"); + IOAllowPowerChange(sysevent.powerKernelPort, + sysevent.powerNotificationID); + } + } + + if (sysevent.event & SYSEVENT_WILLSLEEP) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, "System going to sleep"); + + Sleeping = 1; + + cupsdStopAllJobs(0); + + for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); + p; + p = (cupsd_printer_t *)cupsArrayNext(Printers)) + { + if (p->type & CUPS_PRINTER_DISCOVERED) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, + "Deleting remote destination \"%s\"", p->name); + cupsArraySave(Printers); + cupsdDeletePrinter(p, 0); + cupsArrayRestore(Printers); + } + else + { + cupsdLogMessage(CUPSD_LOG_DEBUG, + "Deregistering local printer \"%s\"", p->name); + cupsdDeregisterPrinter(p, 0); + } + } + + cupsdCleanDirty(); + + IOAllowPowerChange(sysevent.powerKernelPort, + sysevent.powerNotificationID); + } + + if (sysevent.event & SYSEVENT_WOKE) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, "System woke from sleep"); + IOAllowPowerChange(sysevent.powerKernelPort, + sysevent.powerNotificationID); + Sleeping = 0; + cupsdCheckJobs(); + } + + if (sysevent.event & SYSEVENT_NETCHANGED) + { + if (!Sleeping) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, + "System network configuration changed"); + + /* + * Resetting browse_time before calling cupsdSendBrowseList causes + * browse packets to be sent for local shared printers. + */ + + for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); + p; + p = (cupsd_printer_t *)cupsArrayNext(Printers)) + p->browse_time = 0; + + cupsdSendBrowseList(); + cupsdRestartPolling(); + } + else + cupsdLogMessage(CUPSD_LOG_DEBUG, + "System network configuration changed; " + "ignored while sleeping"); + } + + if (sysevent.event & SYSEVENT_NAMECHANGED) + { + if (!Sleeping) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, "Computer name changed"); + + /* + * De-register the individual printers... + */ + + for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); + p; + p = (cupsd_printer_t *)cupsArrayNext(Printers)) + cupsdDeregisterPrinter(p, 1); + + /* + * Update the computer name... + */ + + cupsdUpdateDNSSDName(); + + /* + * Now re-register them... + */ + + for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); + p; + p = (cupsd_printer_t *)cupsArrayNext(Printers)) + { + p->browse_time = 0; + cupsdRegisterPrinter(p); + } + } + else + cupsdLogMessage(CUPSD_LOG_DEBUG, + "Computer name changed; ignored while sleeping"); + } + } +} #endif /* __APPLE__ */ /* - * End of "$Id: sysman.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: sysman.c 7676 2008-06-18 23:42:37Z mike $". */ diff --git a/scheduler/sysman.h b/scheduler/sysman.h index 50ef17f96..282f7b5bc 100644 --- a/scheduler/sysman.h +++ b/scheduler/sysman.h @@ -1,5 +1,5 @@ /* - * "$Id: sysman.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: sysman.h 7676 2008-06-18 23:42:37Z mike $" * * System management definitions for the Common UNIX Printing System (CUPS). * @@ -53,9 +53,8 @@ extern void cupsdMarkDirty(int what); extern void cupsdSetBusyState(void); extern void cupsdStartSystemMonitor(void); extern void cupsdStopSystemMonitor(void); -extern void cupsdUpdateSystemMonitor(void); /* - * End of "$Id: sysman.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: sysman.h 7676 2008-06-18 23:42:37Z mike $". */ diff --git a/scheduler/testmime.c b/scheduler/testmime.c index 130aaaaa2..3eface432 100644 --- a/scheduler/testmime.c +++ b/scheduler/testmime.c @@ -1,5 +1,5 @@ /* - * "$Id: testmime.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testmime.c 7670 2008-06-17 22:42:08Z mike $" * * MIME test program for the Common UNIX Printing System (CUPS). * @@ -322,5 +322,5 @@ type_dir(mime_t *mime, /* I - MIME database */ /* - * End of "$Id: testmime.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: testmime.c 7670 2008-06-17 22:42:08Z mike $". */ diff --git a/scheduler/testspeed.c b/scheduler/testspeed.c index 4b740675e..11cdfcae6 100644 --- a/scheduler/testspeed.c +++ b/scheduler/testspeed.c @@ -1,5 +1,5 @@ /* - * "$Id: testspeed.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: testspeed.c 7688 2008-06-24 04:34:52Z mike $" * * Scheduler speed test for the Common UNIX Printing System (CUPS). * @@ -24,15 +24,13 @@ * Include necessary headers... */ -#include <stdio.h> -#include <stdlib.h> -#include <ctype.h> -#include <sys/types.h> -#include <sys/time.h> -#include <sys/wait.h> +#include <cups/string.h> #include <cups/cups.h> #include <cups/language.h> #include <cups/debug.h> +#include <sys/types.h> +#include <sys/time.h> +#include <sys/wait.h> #include <errno.h> @@ -366,5 +364,5 @@ usage(void) /* - * End of "$Id: testspeed.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: testspeed.c 7688 2008-06-24 04:34:52Z mike $". */ diff --git a/scheduler/type.c b/scheduler/type.c index f40d10b2b..6532b9c08 100644 --- a/scheduler/type.c +++ b/scheduler/type.c @@ -1,5 +1,5 @@ /* - * "$Id: type.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: type.c 7694 2008-06-26 00:23:20Z mike $" * * MIME typing routines for the Common UNIX Printing System (CUPS). * @@ -157,7 +157,7 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ logic = MIME_MAGIC_NOP; invert = 0; - DEBUG_printf(("%s/%s: %s\n", mt->super, mt->type, rule)); + DEBUG_printf(("mimeAddTypeRule: %s/%s: %s\n", mt->super, mt->type, rule)); while (*rule != '\0') { @@ -166,13 +166,13 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ if (*rule == '(') { - DEBUG_puts("new parenthesis group"); + DEBUG_puts("mimeAddTypeRule: New parenthesis group"); logic = MIME_MAGIC_NOP; rule ++; } else if (*rule == ')') { - DEBUG_puts("close paren..."); + DEBUG_puts("mimeAddTypeRule: Close paren..."); if (current == NULL || current->parent == NULL) return (-1); @@ -208,11 +208,12 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ current->prev = NULL; current->parent = temp; - DEBUG_printf(("creating new AND group %p...\n", temp)); + DEBUG_printf(("mimeAddTypeRule: Creating new AND group %p...\n", temp)); } else { - DEBUG_printf(("setting group %p op to AND...\n", current->parent)); + DEBUG_printf(("mimeAddTypeRule: Setting group %p op to AND...\n", + current->parent)); current->parent->op = MIME_MAGIC_AND; } @@ -238,7 +239,8 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ if ((temp = calloc(1, sizeof(mime_magic_t))) == NULL) return (-1); - DEBUG_printf(("creating new AND group %p inside OR group\n", temp)); + DEBUG_printf(("mimeAddTypeRule: Creating new AND group %p inside OR " + "group\n", temp)); while (current->prev != NULL) { @@ -258,7 +260,7 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ * This isn't the top rule, so go up one level... */ - DEBUG_puts("going up one level"); + DEBUG_puts("mimeAddTypeRule: Going up one level"); current = current->parent; } } @@ -268,7 +270,7 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ } else if (*rule == '!') { - DEBUG_puts("NOT"); + DEBUG_puts("mimeAddTypeRule: NOT"); invert = 1; rule ++; } @@ -441,7 +443,8 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ * Add parenthetical grouping... */ - DEBUG_printf(("making new OR group %p for parenthesis...\n", temp)); + DEBUG_printf(("mimeAddTypeRule: Making new OR group %p for " + "parenthesis...\n", temp)); temp->op = MIME_MAGIC_OR; @@ -454,8 +457,8 @@ mimeAddTypeRule(mime_type_t *mt, /* I - Type to add to */ logic = MIME_MAGIC_OR; } - DEBUG_printf(("adding %p: %s, op = %d, logic = %d, invert = %d\n", - temp, name, op, logic, invert)); + DEBUG_printf(("mimeAddTypeRule: adding %p: %s, op=%d, logic=%d, " + "invert=%d\n", temp, name, op, logic, invert)); /* * Fill in data for the rule... @@ -543,10 +546,7 @@ mimeFileType(mime_t *mime, /* I - MIME database */ DEBUG_printf(("mimeFileType(mime=%p, pathname=\"%s\", filename=\"%s\", " - "compression=%p)\n", - mime, pathname ? pathname : "(nil)", - filename ? filename : "(nil)", - compression)); + "compression=%p)\n", mime, pathname, filename, compression)); /* * Range check input parameters... @@ -803,7 +803,7 @@ checkrules(const char *filename, /* I - Filename */ break; case MIME_MAGIC_STRING : - DEBUG_printf((" string(%d, \"%s\")\n", rules->offset, + DEBUG_printf(("checkrules: string(%d, \"%s\")\n", rules->offset, rules->value.stringv)); /* @@ -822,7 +822,7 @@ checkrules(const char *filename, /* I - Filename */ sizeof(fb->buffer)); fb->offset = rules->offset; - DEBUG_printf((" loaded %d byte fb->buffer at %d, starts " + DEBUG_printf(("checkrules: loaded %d byte fb->buffer at %d, starts " "with \"%c%c%c%c\"...\n", fb->length, fb->offset, fb->buffer[0], fb->buffer[1], fb->buffer[2], fb->buffer[3])); @@ -838,7 +838,7 @@ checkrules(const char *filename, /* I - Filename */ else result = (memcmp(fb->buffer + rules->offset - fb->offset, rules->value.stringv, rules->length) == 0); - DEBUG_printf((" result=%d\n", result)); + DEBUG_printf(("checkrules: result=%d\n", result)); break; case MIME_MAGIC_ISTRING : @@ -1039,8 +1039,8 @@ checkrules(const char *filename, /* I - Filename */ * the the rule set is false... */ - DEBUG_printf((" result of test %p (MIME_MAGIC_%s) is %d\n", rules, - debug_tests[rules->op], result)); + DEBUG_printf(("checkrules: result of test %p (MIME_MAGIC_%s) is %d\n", + rules, debug_tests[rules->op], result)); if ((result && logic == MIME_MAGIC_OR) || (!result && logic == MIME_MAGIC_AND)) @@ -1162,5 +1162,5 @@ patmatch(const char *s, /* I - String to match against */ /* - * End of "$Id: type.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: type.c 7694 2008-06-26 00:23:20Z mike $". */ diff --git a/scheduler/util.c b/scheduler/util.c index 115bbf8b3..c876c9a04 100644 --- a/scheduler/util.c +++ b/scheduler/util.c @@ -1,5 +1,5 @@ /* - * "$Id: util.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: util.c 7621 2008-06-06 18:55:35Z mike $" * * Mini-daemon utility functions for the Common UNIX Printing System (CUPS). * @@ -446,5 +446,5 @@ cupsdSendIPPTrailer(void) /* - * End of "$Id: util.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: util.c 7621 2008-06-06 18:55:35Z mike $". */ diff --git a/scheduler/util.h b/scheduler/util.h index 420030771..05642f3a9 100644 --- a/scheduler/util.h +++ b/scheduler/util.h @@ -1,5 +1,5 @@ /* - * "$Id: util.h 6649 2007-07-11 21:46:42Z mike $" + * "$Id: util.h 7621 2008-06-06 18:55:35Z mike $" * * Mini-daemon utility definitions for the Common UNIX Printing System (CUPS). * @@ -50,5 +50,5 @@ extern void cupsdSendIPPTrailer(void); #endif /* !_CUPSD_UTIL_H_ */ /* - * End of "$Id: util.h 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: util.h 7621 2008-06-06 18:55:35Z mike $". */ diff --git a/scripting/php/phpcups.c b/scripting/php/phpcups.c index 348b858b4..24e557113 100644 --- a/scripting/php/phpcups.c +++ b/scripting/php/phpcups.c @@ -1,5 +1,5 @@ /* - * "$Id: phpcups.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: phpcups.c 7624 2008-06-09 15:55:04Z mike $" * * Printing utilities for the Common UNIX Printing System (CUPS). * @@ -483,5 +483,5 @@ PHP_FUNCTION(cups_print_files) /* - * End of "$Id: phpcups.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: phpcups.c 7624 2008-06-09 15:55:04Z mike $". */ diff --git a/standards/Makefile b/standards/Makefile index 23b498f20..6e39c798b 100644 --- a/standards/Makefile +++ b/standards/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Standards makefile for the Common UNIX Printing System (CUPS). # @@ -143,5 +143,5 @@ rfctohtml: rfctohtml.o ../cups/libcups.a # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/standards/pwg5107.1.pdf b/standards/pwg5107.1.pdf Binary files differnew file mode 100644 index 000000000..018ce9c35 --- /dev/null +++ b/standards/pwg5107.1.pdf diff --git a/standards/wd-ippstate10-20061107.pdf b/standards/wd-ippstate10-20061107.pdf Binary files differnew file mode 100644 index 000000000..22ddf1334 --- /dev/null +++ b/standards/wd-ippstate10-20061107.pdf diff --git a/systemv/Makefile b/systemv/Makefile index 4c5775e8f..1c8a8e3a7 100644 --- a/systemv/Makefile +++ b/systemv/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # System V commands makefile for the Common UNIX Printing System (CUPS). # @@ -267,5 +267,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/systemv/accept.c b/systemv/accept.c index e7efddad7..20e3af373 100644 --- a/systemv/accept.c +++ b/systemv/accept.c @@ -1,5 +1,5 @@ /* - * "$Id: accept.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: accept.c 7221 2008-01-16 22:20:08Z mike $" * * "accept", "disable", "enable", and "reject" commands for the Common * UNIX Printing System (CUPS). @@ -282,5 +282,5 @@ main(int argc, /* I - Number of command-line arguments */ /* - * End of "$Id: accept.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: accept.c 7221 2008-01-16 22:20:08Z mike $". */ diff --git a/systemv/cupsaddsmb.c b/systemv/cupsaddsmb.c index 2ce5f84a1..18b1a2f6b 100644 --- a/systemv/cupsaddsmb.c +++ b/systemv/cupsaddsmb.c @@ -1,5 +1,5 @@ /* - * "$Id: cupsaddsmb.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: cupsaddsmb.c 7033 2007-10-19 02:11:28Z mike $" * * "cupsaddsmb" command for the Common UNIX Printing System (CUPS). * @@ -298,5 +298,5 @@ usage(void) /* - * End of "$Id: cupsaddsmb.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: cupsaddsmb.c 7033 2007-10-19 02:11:28Z mike $". */ diff --git a/systemv/cupstestppd.c b/systemv/cupstestppd.c index e11f6dc46..b3b3ff0ce 100644 --- a/systemv/cupstestppd.c +++ b/systemv/cupstestppd.c @@ -1,5 +1,5 @@ /* - * "$Id: cupstestppd.c 6927 2007-09-07 16:51:00Z mike $" + * "$Id: cupstestppd.c 7637 2008-06-11 17:25:36Z mike $" * * PPD test program for the Common UNIX Printing System (CUPS). * @@ -2603,5 +2603,5 @@ valid_utf8(const char *s) /* I - String to check */ /* - * End of "$Id: cupstestppd.c 6927 2007-09-07 16:51:00Z mike $". + * End of "$Id: cupstestppd.c 7637 2008-06-11 17:25:36Z mike $". */ diff --git a/systemv/lpadmin.c b/systemv/lpadmin.c index e0e3ad9ff..4448ecf62 100644 --- a/systemv/lpadmin.c +++ b/systemv/lpadmin.c @@ -1,5 +1,5 @@ /* - * "$Id: lpadmin.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpadmin.c 7059 2007-11-02 19:15:17Z mike $" * * "lpadmin" command for the Common UNIX Printing System (CUPS). * @@ -1977,5 +1977,5 @@ validate_name(const char *name) /* I - Name to check */ /* - * End of "$Id: lpadmin.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpadmin.c 7059 2007-11-02 19:15:17Z mike $". */ diff --git a/systemv/lpinfo.c b/systemv/lpinfo.c index 137304994..bd7fb0311 100644 --- a/systemv/lpinfo.c +++ b/systemv/lpinfo.c @@ -1,5 +1,5 @@ /* - * "$Id: lpinfo.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpinfo.c 7460 2008-04-16 02:19:54Z mike $" * * "lpinfo" command for the Common UNIX Printing System (CUPS). * @@ -351,5 +351,5 @@ show_models(http_t *http, /* I - HTTP connection to server */ /* - * End of "$Id: lpinfo.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpinfo.c 7460 2008-04-16 02:19:54Z mike $". */ diff --git a/systemv/lpmove.c b/systemv/lpmove.c index 88d2a154a..7af5e8dc1 100644 --- a/systemv/lpmove.c +++ b/systemv/lpmove.c @@ -1,5 +1,5 @@ /* - * "$Id: lpmove.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpmove.c 7219 2008-01-14 22:00:02Z mike $" * * "lpmove" command for the Common UNIX Printing System (CUPS). * @@ -217,5 +217,5 @@ move_job(http_t *http, /* I - HTTP connection to server */ /* - * End of "$Id: lpmove.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpmove.c 7219 2008-01-14 22:00:02Z mike $". */ diff --git a/systemv/lpoptions.c b/systemv/lpoptions.c index 132523be6..0dc5d0b56 100644 --- a/systemv/lpoptions.c +++ b/systemv/lpoptions.c @@ -1,5 +1,5 @@ /* - * "$Id: lpoptions.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpoptions.c 7669 2008-06-17 22:02:33Z mike $" * * Printer option program for the Common UNIX Printing System (CUPS). * @@ -546,5 +546,5 @@ usage(void) /* - * End of "$Id: lpoptions.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpoptions.c 7669 2008-06-17 22:02:33Z mike $". */ diff --git a/systemv/lpstat.c b/systemv/lpstat.c index 98bc733e5..ba63ae2c6 100644 --- a/systemv/lpstat.c +++ b/systemv/lpstat.c @@ -1,5 +1,5 @@ /* - * "$Id: lpstat.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: lpstat.c 7620 2008-06-06 17:24:22Z mike $" * * "lpstat" command for the Common UNIX Printing System (CUPS). * @@ -2266,5 +2266,5 @@ show_scheduler(http_t *http) /* I - HTTP connection to server */ /* - * End of "$Id: lpstat.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: lpstat.c 7620 2008-06-06 17:24:22Z mike $". */ diff --git a/templates/Makefile b/templates/Makefile index 3bd01c847..831c1c968 100644 --- a/templates/Makefile +++ b/templates/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # Template makefile for the Common UNIX Printing System (CUPS). # @@ -187,5 +187,5 @@ uninstall-languages: # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/test/4.3-job-ops.test b/test/4.3-job-ops.test index d403d074f..30aeccc45 100644 --- a/test/4.3-job-ops.test +++ b/test/4.3-job-ops.test @@ -1,5 +1,5 @@ # -# "$Id: 4.3-job-ops.test 6379 2007-03-21 14:57:22Z mike $" +# "$Id: 4.3-job-ops.test 7550 2008-05-12 16:40:40Z mike $" # # Verify that the IPP job operations work. # @@ -323,5 +323,5 @@ } # -# End of "$Id: 4.3-job-ops.test 6379 2007-03-21 14:57:22Z mike $" +# End of "$Id: 4.3-job-ops.test 7550 2008-05-12 16:40:40Z mike $" # diff --git a/test/5.1-lpadmin.sh b/test/5.1-lpadmin.sh index 2e054ea47..30bda2d46 100644 --- a/test/5.1-lpadmin.sh +++ b/test/5.1-lpadmin.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.1-lpadmin.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: 5.1-lpadmin.sh 7494 2008-04-25 18:36:46Z mike $" # # Test the lpadmin command. # @@ -51,5 +51,5 @@ fi echo "" # -# End of "$Id: 5.1-lpadmin.sh 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: 5.1-lpadmin.sh 7494 2008-04-25 18:36:46Z mike $". # diff --git a/test/5.5-lp.sh b/test/5.5-lp.sh index d1928eb54..c048d7867 100644 --- a/test/5.5-lp.sh +++ b/test/5.5-lp.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.5-lp.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: 5.5-lp.sh 7415 2008-03-31 22:33:20Z mike $" # # Test the lp command. # @@ -74,5 +74,5 @@ echo "" ./waitjobs.sh # -# End of "$Id: 5.5-lp.sh 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: 5.5-lp.sh 7415 2008-03-31 22:33:20Z mike $". # diff --git a/test/5.6-lpr.sh b/test/5.6-lpr.sh index a1fe01d35..7dabf84c6 100644 --- a/test/5.6-lpr.sh +++ b/test/5.6-lpr.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.6-lpr.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: 5.6-lpr.sh 7409 2008-03-29 00:26:03Z mike $" # # Test the lpr command. # @@ -74,5 +74,5 @@ echo "" ./waitjobs.sh # -# End of "$Id: 5.6-lpr.sh 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: 5.6-lpr.sh 7409 2008-03-29 00:26:03Z mike $". # diff --git a/test/5.7-lprm.sh b/test/5.7-lprm.sh index fe323db15..bcb721169 100644 --- a/test/5.7-lprm.sh +++ b/test/5.7-lprm.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.7-lprm.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $" # # Test the lprm command. # @@ -43,5 +43,5 @@ fi echo "" # -# End of "$Id: 5.7-lprm.sh 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $". # diff --git a/test/5.8-cancel.sh b/test/5.8-cancel.sh index 90a688d52..7cf31b0da 100644 --- a/test/5.8-cancel.sh +++ b/test/5.8-cancel.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.8-cancel.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $" # # Test the cancel command. # @@ -41,5 +41,5 @@ fi echo "" # -# End of "$Id: 5.8-cancel.sh 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $". # diff --git a/test/Makefile b/test/Makefile index 99f8fa960..1698aca3d 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $" +# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $" # # IPP test makefile for the Common UNIX Printing System (CUPS). # @@ -106,5 +106,5 @@ include Dependencies # -# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $". +# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $". # diff --git a/test/ipptest.c b/test/ipptest.c index 6bd9923c0..5b22888ed 100644 --- a/test/ipptest.c +++ b/test/ipptest.c @@ -1,5 +1,5 @@ /* - * "$Id: ipptest.c 6649 2007-07-11 21:46:42Z mike $" + * "$Id: ipptest.c 7219 2008-01-14 22:00:02Z mike $" * * IPP test command for the Common UNIX Printing System (CUPS). * @@ -945,5 +945,5 @@ usage(const char *option) /* I - Option string or NULL */ /* - * End of "$Id: ipptest.c 6649 2007-07-11 21:46:42Z mike $". + * End of "$Id: ipptest.c 7219 2008-01-14 22:00:02Z mike $". */ diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh index 89fb1d800..ae6fcb497 100755 --- a/test/run-stp-tests.sh +++ b/test/run-stp-tests.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: run-stp-tests.sh 6649 2007-07-11 21:46:42Z mike $" +# "$Id: run-stp-tests.sh 7697 2008-06-27 15:56:00Z mike $" # # Perform the complete set of IPP compliance tests specified in the # CUPS Software Test Plan. @@ -213,6 +213,7 @@ mkdir /tmp/cups-$user/certs mkdir /tmp/cups-$user/share mkdir /tmp/cups-$user/share/banners mkdir /tmp/cups-$user/share/drv +mkdir /tmp/cups-$user/share/mime mkdir /tmp/cups-$user/share/model mkdir /tmp/cups-$user/share/ppdc mkdir /tmp/cups-$user/interfaces @@ -254,6 +255,8 @@ ln -s $root/data /tmp/cups-$user/share/charsets ln -s $root/data /tmp/cups-$user/share ln -s $root/fonts /tmp/cups-$user/share ln -s $root/ppdc/sample.drv /tmp/cups-$user/share/drv +ln -s $root/conf/mime.types /tmp/cups-$user/share/mime +ln -s $root/conf/mime.convs /tmp/cups-$user/share/mime ln -s $root/data/*.h /tmp/cups-$user/share/ppdc ln -s $root/data/*.defs /tmp/cups-$user/share/ppdc ln -s $root/templates /tmp/cups-$user/share @@ -326,11 +329,8 @@ $encryption </Policy> EOF -touch /tmp/cups-$user/classes.conf -touch /tmp/cups-$user/printers.conf - # -# Setup lots of test queues - 500 with PPD files, 500 without... +# Setup lots of test queues - half with PPD files, half without... # echo "Creating printers.conf for test..." @@ -372,9 +372,6 @@ done cp /tmp/cups-$user/printers.conf /tmp/cups-$user/printers.conf.orig -cp $root/conf/mime.types /tmp/cups-$user/mime.types -cp $root/conf/mime.convs /tmp/cups-$user/mime.convs - # # Setup the paths... # @@ -709,6 +706,16 @@ else echo "<P>PASS: $count debug2 messages.</P>" >>$strfile fi +# Page log file... +if grep -q 'testfile.pdf Letter' /tmp/cups-$user/log/page_log; then + echo "PASS: page_log formatted correctly." + echo "<P>PASS: page_log formatted correctly.</P>" >>$strfile +else + echo "FAIL: page_log formatted incorrectly." + echo "<P>FAIL: page_log formatted incorrectly.</P>" >>$strfile + fail=`expr $fail + 1` +fi + # Log files... echo "<H2>access_log</H2>" >>$strfile echo "<PRE>" >>$strfile @@ -754,5 +761,5 @@ if test $fail != 0; then fi # -# End of "$Id: run-stp-tests.sh 6649 2007-07-11 21:46:42Z mike $" +# End of "$Id: run-stp-tests.sh 7697 2008-06-27 15:56:00Z mike $" # diff --git a/test/testfile.jpg b/test/testfile.jpg Binary files differindex 9f4b39938..418cb9359 100644 --- a/test/testfile.jpg +++ b/test/testfile.jpg diff --git a/test/testfile.pdf b/test/testfile.pdf Binary files differindex b91eab50c..433577179 100644 --- a/test/testfile.pdf +++ b/test/testfile.pdf diff --git a/tools/checkglobals b/tools/checkglobals index c20d94f15..4d15387ea 100755 --- a/tools/checkglobals +++ b/tools/checkglobals @@ -4,8 +4,6 @@ # for file in *.o; do - echo -n "$file: " - functions="" for function in `nm -g $file | grep "T " | awk '{print $3}'`; do @@ -27,8 +25,8 @@ for file in *.o; do done if test -z "$functions"; then - echo "OK" + echo "$file: OK" else - echo $functions + echo "$file: $functions" fi done |