Comparar commits

..

1 Commits

Autor SHA1 Mensagem Data
msweet b73f328146 Import cups.org releases
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/tags/release-1.2.9@4306 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-05-10 18:56:23 +00:00
176 arquivos alterados com 893 adições e 5490 exclusões
+1 -105
Ver Arquivo
@@ -1,110 +1,6 @@
CHANGES.txt - 2007-05-08
CHANGES.txt - 2007-03-15
------------------------
CHANGES IN CUPS V1.2.11
- Updated the launchd support on Mac OS X to better
support reconfiguration.
- "make distclean" didn't remove all generated files
(STR #2366)
- Fixed a bug in the advertisement of classes (STR
#2373)
- The IPP backend now stays running until the job is
actually printed by the remote server; previously
it would stop monitoring the job if it was held or
temporarily stopped (STR #2352)
- PDF files were not always printed using the correct
orientation (STR #2348)
- The scheduler could crash if you specified a bad file:
URI for a printer (STR #2351)
- The Renew-Subscription operation now returns the
notify-lease-duration value that was used (STR #2346)
- The IPP backend sent job options to IPP printers,
however some printers tried to override the options
embedded in the PS/PCL stream with those job options
(STR #2349)
- ppdLocalize() now also tries a country-specific
localization for when localizing to a generic locale
name.
- The cupstestppd program now allows for partial
localizations to reduce the size of universal PPD
files.
- Chinese PPD files were incorrectly tagged with the
"cn" locale (should have been "zh")
- The backends now manage the printer-state-reasons
attribute more accurately (STR #2345)
- Java, PHP, Perl, and Python scripts did not work
properly (STR #2342)
- The scheduler would take forever to start if the
maximum number of file descriptors was set to
"unlimited" (STR #2329)
- The page-ranges option was incorrectly applied to the
banner pages (STR #2336)
- Fixed some GCC compile warnings (STR #2340)
- The DBUS notification code was broken for older
versions of DBUS (STR #2327)
- The IPv6 code did not compile on HP-UX 11.23 (STR
#2331)
- PPD constraints did not work properly with custom
options.
- Regular PPD options with the name "CustomFoo" did
not work.
- The USB backend did not work on NetBSD (STR #2324)
- The printer-state-reasons attribute was incorrectly
cleared after a job completed (STR #2323)
- The scheduler did not set the printer operation policy
on startup, only on soft reload (STR #2319)
- The AP_FIRSTPAGE_InputSlot option did not clear any
ManualFeed setting that was made, which caused problems
with some PPD files (STR #2318)
- cupsDoFileRequest() and cupsDoRequest() did not abort
when getting an error in the response (STR #2315)
- The scheduler did not schedule jobs properly to remote
or nested classes (STR #2317)
- Updated the mime.types and mime.convs headers to warn
that the files are overwritten when CUPS is installed.
Local changes should go in local.types or local.convs,
respectively (STR #2310)
- The scheduler could get in an infinite loop if a
printer in an implicit class disappeared (STR #2311)
- The pstops filter did not handle %%EndFeature comments
properly (STR #2306)
- Fixed a problem with the Polish web page printer icons
(STR #2305)
- ppdLocalize() now also localizes the cupsICCProfile
attributes.
- The scheduler still had a reference to the incorrect
"notify-recipient" attribute (STR #2307)
- The "make check" and "make test" subscription tests did
not set the locale (STR #2307)
- The "make check" and "make test" subscription tests
incorrectly used the notify-recipient attribute instead
of notify-recipient-uri (STR #2307)
- cupsRasterInterpretPPD() incorrectly limited the
cupsBorderlessScalingFactor when specified in the
job options.
CHANGES IN CUPS V1.2.10
- ppdLocalize() now supports localizing for Japanese
using the "jp" locale name used by the ppdmerge
program from the CUPS DDK 1.1.0 (STR #2301)
- _cupsAdminSetServerSettings() did not support changing
of top-level directives as designed.
- The init script path check was broken.
- CUPS incorrectly used the attribute "notify-recipient"
instead of "notify-recicpient-uri" in several places
(STR #2297)
- Fixed a configure script bug on MirBSD (STR #2294)
- The pdftops filter did not limit the amount of recursion
of page sets (STR #2293)
- Custom page sizes with fractional point sizes did not
work (STR #2296)
- The lpoptions command would crash when adding or removing
options on a system with no printers (STR #2295)
CHANGES IN CUPS V1.2.9
- The scheduler did not use the default job-sheets
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
INSTALL - CUPS v1.2.11 - 2007-05-08
-----------------------------------
INSTALL - CUPS v1.2.9 - 2007-03-15
----------------------------------
This file describes how to compile and install CUPS from source
code. For more information on CUPS see the file called
+3 -15
Ver Arquivo
@@ -3,7 +3,7 @@
#
# Top-level Makefile for the Common UNIX Printing System (CUPS).
#
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
# property of Easy Software Products and are protected by Federal
@@ -66,7 +66,6 @@ distclean: clean
$(RM) cups-config conf/cupsd.conf conf/pam.std
$(RM) doc/help/standard.html doc/index.html
$(RM) init/cups.sh init/cups-lpd
$(RM) man/client.conf.man
$(RM) man/cups-deviced.man man/cups-driverd.man
$(RM) man/cups-lpd.man man/cupsaddsmb.man man/cupsd.man
$(RM) man/cupsd.conf.man man/lpoptions.man
@@ -122,21 +121,12 @@ install: installhdrs
echo Installing StartupItems files...; \
$(INSTALL_SCRIPT) init/PrintingServices $(BUILDROOT)$(INITDDIR)/PrintingServices; \
$(INSTALL_DATA) init/StartupParameters.plist $(BUILDROOT)$(INITDDIR)/StartupParameters.plist; \
$(INSTALL_DIR) $(BUILDROOT)$(INITDDIR)/Resources/English.lproj; \
$(INSTALL_DIR) -m 755 $(BUILDROOT)$(INITDDIR)/Resources/English.lproj; \
$(INSTALL_DATA) init/Localizable.strings $(BUILDROOT)$(INITDDIR)/Resources/English.lproj/Localizable.strings; \
elif test "$(INITDDIR)" = "/System/Library/LaunchDaemons"; then \
echo Installing LaunchDaemons configuration files...; \
$(INSTALL_DATA) init/org.cups.cupsd.plist $(BUILDROOT)$(DEFAULT_LAUNCHD_CONF); \
$(INSTALL_DATA) init/org.cups.cups-lpd.plist $(BUILDROOT)/System/Library/LaunchDaemons; \
case `uname -r` in \
8.*) \
$(INSTALL_DIR) $(BUILDROOT)/System/Library/StartupItems/PrintingServices; \
$(INSTALL_SCRIPT) init/PrintingServices.launchd $(BUILDROOT)/System/Library/StartupItems/PrintingServices/PrintingServices; \
$(INSTALL_DATA) init/StartupParameters.plist $(BUILDROOT)/System/Library/StartupItems/PrintingServices/StartupParameters.plist; \
$(INSTALL_DIR) $(BUILDROOT)/System/Library/StartupItems/PrintingServices/Resources/English.lproj; \
$(INSTALL_DATA) init/Localizable.strings $(BUILDROOT)/System/Library/StartupItems/PrintingServices/Resources/English.lproj/Localizable.strings; \
;; \
esac \
else \
echo Installing RC script...; \
$(INSTALL_SCRIPT) init/cups.sh $(BUILDROOT)$(INITDDIR)/cups; \
@@ -211,9 +201,7 @@ uninstall:
$(RM) $(BUILDROOT)$(INITDDIR)/Resources/English.lproj/Localizable.strings; \
$(RMDIR) $(BUILDROOT)$(INITDDIR)/Resources/English.lproj; \
elif test "$(INITDDIR)" = "/System/Library/LaunchDaemons"; then \
$(RM) $(BUILDROOT)$(INITDDIR)/org.cups.cupsd.plist; \
$(RM) $(BUILDROOT)$(INITDDIR)/org.cups.cups-lpd.plist; \
$(RMDIR) $(BUILDROOT)/System/Library/StartupItems/PrintingServices; \
$(RM) $(BUILDROOT)$(DEFAULT_LAUNCHD_CONF); \
else \
$(INSTALL_SCRIPT) init/cups.sh $(BUILDROOT)$(INITDDIR)/cups; \
fi \
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
README - CUPS v1.2.11 - 2007-05-08
----------------------------------
README - CUPS v1.2.9 - 2007-03-15
---------------------------------
Looking for compile instructions? Read the file "INSTALL.txt"
instead...
+3 -8
Ver Arquivo
@@ -101,7 +101,6 @@ main(int argc, /* I - Number of command-line args */
char *argv[]) /* I - Command-line arguments */
{
int i; /* Looping var */
int send_options; /* Send job options? */
int num_options; /* Number of printer options */
cups_option_t *options; /* Printer options */
char method[255], /* Method in URI */
@@ -417,8 +416,6 @@ main(int argc, /* I - Number of command-line args */
filename = tmpfilename;
files = &filename;
num_files = 1;
send_options = 0;
}
else
{
@@ -429,8 +426,6 @@ main(int argc, /* I - Number of command-line args */
num_files = argc - 6;
files = argv + 6;
send_options = strncasecmp(content_type, "application/vnd.cups-", 21) != 0;
#ifdef HAVE_LIBZ
if (compression)
compress_files(num_files, files);
@@ -858,7 +853,6 @@ main(int argc, /* I - Number of command-line args */
content_type = "application/postscript";
copies = 1;
copies_remaining = 1;
send_options = 0;
}
}
#endif /* __APPLE__ */
@@ -874,7 +868,7 @@ main(int argc, /* I - Number of command-line args */
num_options, &options);
}
if (copies_sup && version > 0 && send_options)
if (copies_sup && version > 0)
{
/*
* Only send options if the destination printer supports the copies
@@ -1084,7 +1078,8 @@ main(int argc, /* I - Number of command-line args */
* Stop polling if the job is finished or pending-held...
*/
if (job_state->values[0].integer > IPP_JOB_STOPPED)
if (job_state->values[0].integer > IPP_JOB_PROCESSING ||
job_state->values[0].integer == IPP_JOB_HELD)
{
if ((job_sheets = ippFindAttribute(response,
"job-media-sheets-completed",
+4 -5
Ver Arquivo
@@ -101,8 +101,7 @@ backendRunLoop(int print_fd, /* I - Print file descriptor */
* Now loop until we are out of data from print_fd...
*/
for (print_bytes = 0, print_ptr = print_buffer, offline = -1,
paperout = -1, total_bytes = 0;;)
for (print_bytes = 0, print_ptr = print_buffer, offline = 0, paperout = 0, total_bytes = 0;;)
{
/*
* Use select() to determine whether we have data to copy around...
@@ -126,7 +125,7 @@ backendRunLoop(int print_fd, /* I - Print file descriptor */
* Pause printing to clear any pending errors...
*/
if (errno == ENXIO && offline != 1)
if (errno == ENXIO && !offline)
{
fputs("STATE: +offline-error\n", stderr);
fputs("INFO: Printer is currently off-line.\n", stderr);
@@ -204,7 +203,7 @@ backendRunLoop(int print_fd, /* I - Print file descriptor */
if (errno == ENOSPC)
{
if (paperout != 1)
if (!paperout)
{
fputs("ERROR: Out of paper!\n", stderr);
fputs("STATE: +media-empty-error\n", stderr);
@@ -213,7 +212,7 @@ backendRunLoop(int print_fd, /* I - Print file descriptor */
}
else if (errno == ENXIO)
{
if (offline != 1)
if (!offline)
{
fputs("STATE: +offline-error\n", stderr);
fputs("INFO: Printer is currently off-line.\n", stderr);
+2 -2
Ver Arquivo
@@ -227,7 +227,7 @@ static void parse_pserror (char *sockBuffer, int len);
* 'list_devices()' - List all USB devices.
*/
static void list_devices()
void list_devices()
{
iterate_printers(list_device_callback, NULL);
}
@@ -237,7 +237,7 @@ static void list_devices()
* 'print_device()' - Print a file to a USB device.
*/
static int /* O - Exit status */
int /* O - Exit status */
print_device(const char *uri, /* I - Device URI */
const char *hostname, /* I - Hostname/manufacturer */
const char *resource, /* I - Resource/modelname */
+5 -21
Ver Arquivo
@@ -5,7 +5,7 @@
*
* This file is included from "usb.c" when compiled on UNIX/Linux.
*
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
* property of Easy Software Products and are protected by Federal
@@ -44,7 +44,7 @@
* Local functions...
*/
static int open_device(const char *uri, int *use_bc);
int open_device(const char *uri, int *use_bc);
/*
@@ -78,16 +78,6 @@ print_device(const char *uri, /* I - Device URI */
do
{
#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__)
/*
* *BSD's ulpt driver currently does not support the
* back-channel, incorrectly returns data ready on a select(),
* and locks up on read()...
*/
use_bc = 0;
#else
/*
* Disable backchannel data when printing to Brother, Canon, or
* Minolta USB printers - apparently these printers will return
@@ -99,7 +89,6 @@ print_device(const char *uri, /* I - Device URI */
strcasecmp(hostname, "Canon") &&
strcasecmp(hostname, "Konica Minolta") &&
strcasecmp(hostname, "Minolta");
#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ || __DragonFly__ */
if ((device_fd = open_device(uri, &use_bc)) == -1)
{
@@ -196,7 +185,7 @@ print_device(const char *uri, /* I - Device URI */
* 'list_devices()' - List all USB devices.
*/
static void
void
list_devices(void)
{
#ifdef __linux
@@ -301,7 +290,7 @@ list_devices(void)
* 'open_device()' - Open a USB device...
*/
static int /* O - File descriptor or -1 on error */
int /* O - File descriptor or -1 on error */
open_device(const char *uri, /* I - Device URI */
int *use_bc) /* O - Set to 0 for unidirectional */
{
@@ -521,12 +510,7 @@ open_device(const char *uri, /* I - Device URI */
}
#else
{
if (use_bc)
fd = open(uri + 4, O_RDWR | O_EXCL);
else
fd = -1;
if (fd < 0)
if ((fd = open(uri + 4, O_RDWR | O_EXCL)) < 0)
{
fd = open(uri + 4, O_WRONLY | O_EXCL);
*use_bc = 0;
+7 -7
Ver Arquivo
@@ -3,7 +3,7 @@
*
* USB port backend for the Common UNIX Printing System (CUPS).
*
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
* property of Easy Software Products and are protected by Federal
@@ -60,10 +60,10 @@
* Local functions...
*/
static void list_devices(void);
static int print_device(const char *uri, const char *hostname,
const char *resource, const char *options,
int print_fd, int copies, int argc, char *argv[]);
void list_devices(void);
int print_device(const char *uri, const char *hostname,
const char *resource, const char *options,
int print_fd, int copies, int argc, char *argv[]);
/*
@@ -85,7 +85,7 @@ static int print_device(const char *uri, const char *hostname,
* 'list_devices()' - List all available USB devices to stdout.
*/
static void
void
list_devices(void)
{
/*
@@ -103,7 +103,7 @@ list_devices(void)
* 'print_device()' - Print a file to a USB device.
*/
static int /* O - Exit status */
int /* O - Exit status */
print_device(const char *uri, /* I - Device URI */
const char *hostname, /* I - Hostname/manufacturer */
const char *resource, /* I - Resource/modelname */
+2 -2
Ver Arquivo
@@ -3,7 +3,7 @@
*
* "lpr" command for the Common UNIX Printing System (CUPS).
*
* Copyright 1997-2007 by Easy Software Products.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
* property of Easy Software Products and are protected by Federal
@@ -232,7 +232,7 @@ main(int argc, /* I - Number of command-line arguments */
snprintf(email, sizeof(email), "mailto:%s@%s", cupsUser(),
httpGetHostname(NULL, buffer, sizeof(buffer)));
num_options = cupsAddOption("notify-recipient-uri", email,
num_options = cupsAddOption("notify-recipient", email,
num_options, &options);
}
break;
+3 -7
Ver Arquivo
@@ -1,13 +1,9 @@
#
# "$Id: mime.convs 6406 2007-03-27 16:11:27Z mike $"
#
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.convs" file that
# reflects your local configuration changes.
# "$Id: mime.convs 5402 2006-04-14 19:21:03Z mike $"
#
# MIME converts file for the Common UNIX Printing System (CUPS).
#
# Copyright 1997-2007 by Easy Software Products.
# Copyright 1997-2005 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
# property of Easy Software Products and are protected by Federal
@@ -118,5 +114,5 @@ image/x-sun-raster application/vnd.cups-raster 100 imagetoraster
#application/octet-stream application/vnd.cups-raw 0 -
#
# End of "$Id: mime.convs 6406 2007-03-27 16:11:27Z mike $".
# End of "$Id: mime.convs 5402 2006-04-14 19:21:03Z mike $".
#
+3 -7
Ver Arquivo
@@ -1,13 +1,9 @@
#
# "$Id: mime.types 6548 2007-06-04 14:43:42Z mike $"
# "$Id: mime.types 6003 2006-10-02 16:26:04Z mike $"
#
# MIME types file for the Common UNIX Printing System (CUPS).
#
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.types" file that
# reflects your local configuration changes.
#
# Copyright 1997-2007 by Easy Software Products.
# Copyright 1997-2005 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
# property of Easy Software Products and are protected by Federal
@@ -171,5 +167,5 @@ application/vnd.cups-raw (string(0,<1B>E) + !string(2,<1B>%0B)) \
application/octet-stream
#
# End of "$Id: mime.types 6548 2007-06-04 14:43:42Z mike $".
# End of "$Id: mime.types 6003 2006-10-02 16:26:04Z mike $".
#
+3 -3
Ver Arquivo
@@ -1,5 +1,5 @@
dnl
dnl "$Id: cups-common.m4 6548 2007-06-04 14:43:42Z mike $"
dnl "$Id: cups-common.m4 6296 2007-02-20 16:33:25Z mike $"
dnl
dnl Common configuration stuff for the Common UNIX Printing System (CUPS).
dnl
@@ -29,7 +29,7 @@ dnl Set the name of the config header file...
AC_CONFIG_HEADER(config.h)
dnl Version number information...
CUPS_VERSION="1.2.11"
CUPS_VERSION="1.2.9"
CUPS_REVISION=""
AC_SUBST(CUPS_VERSION)
@@ -264,5 +264,5 @@ AC_SUBST(DEFAULT_IPP_PORT)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
dnl
dnl End of "$Id: cups-common.m4 6548 2007-06-04 14:43:42Z mike $".
dnl End of "$Id: cups-common.m4 6296 2007-02-20 16:33:25Z mike $".
dnl
+2 -6
Ver Arquivo
@@ -1,5 +1,5 @@
dnl
dnl "$Id: cups-compiler.m4 6448 2007-04-10 18:24:19Z mike $"
dnl "$Id: cups-compiler.m4 6145 2006-12-06 20:10:16Z mike $"
dnl
dnl Compiler stuff for the Common UNIX Printing System (CUPS).
dnl
@@ -425,10 +425,6 @@ case $uname in
# HP-UX 11.00 (at least) needs this definition to get the
# u_short type used by the IP headers...
OPTIM="$OPTIM -D_INCLUDE_HPUX_SOURCE"
# HP-UX 11.23 (at least) needs this definition to get the
# IPv6 header to work...
OPTIM="$OPTIM -D_HPUX_SOURCE"
;;
OSF*)
@@ -439,5 +435,5 @@ case $uname in
esac
dnl
dnl End of "$Id: cups-compiler.m4 6448 2007-04-10 18:24:19Z mike $".
dnl End of "$Id: cups-compiler.m4 6145 2006-12-06 20:10:16Z mike $".
dnl
+4 -5
Ver Arquivo
@@ -1,5 +1,5 @@
dnl
dnl "$Id: cups-defaults.m4 6525 2007-05-08 18:56:05Z mike $"
dnl "$Id: cups-defaults.m4 6234 2007-02-05 20:25:50Z mike $"
dnl
dnl Default cupsd configuration settings for the Common UNIX Printing System
dnl (CUPS).
@@ -24,12 +24,11 @@ dnl WWW: http://www.cups.org
dnl
dnl Default langugages...
AC_ARG_WITH(languages, [ --with-languages set installed languages,
default="de es et fr it ja pl sv zh_TW" ],
AC_ARG_WITH(languages, [ --with-languages set installed languages, default="de es et fr it ja pl sv" ],
if test "x$withval" != xno; then
LANGUAGES="$withval"
fi,
LANGUAGES="de es et fr it ja pl sv zh_TW")
LANGUAGES="de es et fr it ja pl sv")
AC_SUBST(LANGUAGES)
dnl Default ConfigFilePerm
@@ -253,5 +252,5 @@ fi
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTCAP, "$CUPS_DEFAULT_PRINTCAP")
dnl
dnl End of "$Id: cups-defaults.m4 6525 2007-05-08 18:56:05Z mike $".
dnl End of "$Id: cups-defaults.m4 6234 2007-02-05 20:25:50Z mike $".
dnl
+3 -3
Ver Arquivo
@@ -1,5 +1,5 @@
dnl
dnl "$Id: cups-directories.m4 6353 2007-03-19 06:04:35Z mike $"
dnl "$Id: cups-directories.m4 6333 2007-03-12 20:49:13Z mike $"
dnl
dnl Directory stuff for the Common UNIX Printing System (CUPS).
dnl
@@ -148,7 +148,7 @@ if test x$rcdir = x; then
fi
;;
FreeBSD* | OpenBSD* | MirBSD* | ekkoBSD*)
FreeBSD* | OpenBSD* | MirBsD* | ekkoBSD*)
# FreeBSD and OpenBSD
;;
@@ -343,5 +343,5 @@ AC_DEFINE_UNQUOTED(CUPS_STATEDIR, "$localstatedir/run/cups")
AC_SUBST(CUPS_STATEDIR)
dnl
dnl End of "$Id: cups-directories.m4 6353 2007-03-19 06:04:35Z mike $".
dnl End of "$Id: cups-directories.m4 6333 2007-03-12 20:49:13Z mike $".
dnl
+7 -6
Ver Arquivo
@@ -1508,13 +1508,14 @@ _cupsAdminSetServerSettings(
}
}
else if (!in_policy && !in_location &&
(val = cupsGetOption(line, num_settings, settings)) != NULL)
(val = cupsGetOption(line, num_settings, settings)) != NULL &&
!cupsGetOption(line, cupsd_num_settings, cupsd_settings))
{
/*
* Replace this directive's value with the new one...
* Add this directive to the list of directives we have written...
*/
cupsd_num_settings = cupsAddOption(line, val, cupsd_num_settings,
cupsd_num_settings = cupsAddOption(line, value, cupsd_num_settings,
&cupsd_settings);
/*
@@ -1522,7 +1523,7 @@ _cupsAdminSetServerSettings(
* only support setting root directives, not in sections...
*/
cupsFilePrintf(temp, "%s %s\n", line, val);
cupsFilePrintf(temp, "%s %s\n", line, value);
}
else if (value)
{
@@ -1728,8 +1729,8 @@ _cupsAdminSetServerSettings(
cupsd_num_settings, &cupsd_settings);
/*
* Write the new value, without indentation since we only support
* setting root directives, not in sections...
* Write the new value in its place, without indentation since we
* only support setting root directives, not in sections...
*/
cupsFilePrintf(temp, "%s %s\n", setting->name, setting->value);
+2 -2
Ver Arquivo
@@ -68,10 +68,10 @@ extern "C" {
* Constants...
*/
# define CUPS_VERSION 1.0211
# define CUPS_VERSION 1.0209
# define CUPS_VERSION_MAJOR 1
# define CUPS_VERSION_MINOR 2
# define CUPS_VERSION_PATCH 11
# define CUPS_VERSION_PATCH 9
# define CUPS_DATE_ANY -1
+1 -1
Ver Arquivo
@@ -85,7 +85,7 @@ static const _ipp_option_t ipp_options[] =
{ "notify-lease-duration", IPP_TAG_INTEGER, IPP_TAG_SUBSCRIPTION },
{ "notify-natural-language", IPP_TAG_LANGUAGE, IPP_TAG_SUBSCRIPTION },
{ "notify-pull-method", IPP_TAG_KEYWORD, IPP_TAG_SUBSCRIPTION },
{ "notify-recipient-uri", IPP_TAG_URI, IPP_TAG_SUBSCRIPTION },
{ "notify-recipient", IPP_TAG_URI, IPP_TAG_SUBSCRIPTION },
{ "notify-time-interval", IPP_TAG_INTEGER, IPP_TAG_SUBSCRIPTION },
{ "notify-user-data", IPP_TAG_STRING, IPP_TAG_SUBSCRIPTION },
{ "number-up", IPP_TAG_INTEGER, IPP_TAG_JOB },
+1 -1
Ver Arquivo
@@ -603,7 +603,7 @@ cupsLangGet(const char *language) /* I - Language or locale */
pthread_mutex_lock(&lang_mutex);
#endif /* HAVE_PTHREAD_H */
if ((lang = cups_cache_lookup(real, encoding)) != NULL)
if ((lang = cups_cache_lookup(langname, encoding)) != NULL)
{
#ifdef HAVE_PTHREAD_H
pthread_mutex_unlock(&lang_mutex);
+1 -64
Ver Arquivo
@@ -3,7 +3,7 @@
*
* PPD custom option routines for the Common UNIX Printing System (CUPS).
*
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
* property of Easy Software Products and are protected by Federal
@@ -69,7 +69,6 @@ ppdLocalize(ppd_file_t *ppd) /* I - PPD file */
ppd_choice_t *choice; /* Current choice */
ppd_coption_t *coption; /* Current custom option */
ppd_cparam_t *cparam; /* Current custom parameter */
ppd_attr_t *attr; /* Current attribute */
cups_lang_t *lang; /* Current language */
char ckeyword[PPD_MAX_NAME], /* Custom keyword */
ll_CC[6], /* Language + country locale */
@@ -96,32 +95,6 @@ ppdLocalize(ppd_file_t *ppd) /* I - PPD file */
strlcpy(ll_CC, lang->language, sizeof(ll_CC));
strlcpy(ll, lang->language, sizeof(ll));
if (strlen(ll_CC) == 2)
{
/*
* Map "ll" to primary/origin country locales to have the best
* chance of finding a match...
*/
if (!strcmp(ll_CC, "cs"))
strcpy(ll_CC, "cs_CZ");
else if (!strcmp(ll_CC, "en"))
strcpy(ll_CC, "en_US");
else if (!strcmp(ll_CC, "ja"))
strcpy(ll_CC, "ja_JP");
else if (!strcmp(ll_CC, "sv"))
strcpy(ll_CC, "sv_SE");
else if (!strcmp(ll_CC, "zh"))
strcpy(ll_CC, "zh_CN"); /* Simplified Chinese */
else
{
ll_CC[2] = '_';
ll_CC[3] = toupper(ll_CC[0] & 255);
ll_CC[4] = toupper(ll_CC[1] & 255);
ll_CC[5] = '\0';
}
}
DEBUG_printf((" lang->language=\"%s\", ll=\"%s\", ll_CC=\"%s\"...\n",
lang->language, ll, ll_CC));
@@ -178,29 +151,6 @@ ppdLocalize(ppd_file_t *ppd) /* I - PPD file */
}
}
/*
* Translate ICC profile names...
*/
if ((attr = ppdFindAttr(ppd, "APCustomColorMatchingName", NULL)) != NULL)
{
if ((text = ppd_text(ppd, "APCustomColorMatchingName", attr->spec,
ll_CC, ll)) != NULL)
strlcpy(attr->text, text, sizeof(attr->text));
}
for (attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
attr;
attr = ppdFindNextAttr(ppd, "cupsICCProfile", NULL))
{
cupsArraySave(ppd->sorted_attrs);
if ((text = ppd_text(ppd, "cupsICCProfile", attr->spec, ll_CC, ll)) != NULL)
strlcpy(attr->text, text, sizeof(attr->text));
cupsArrayRestore(ppd->sorted_attrs);
}
return (0);
}
@@ -233,19 +183,6 @@ ppd_text(ppd_file_t *ppd, /* I - PPD file */
{
snprintf(lkeyword, sizeof(lkeyword), "%s.%s", ll, keyword);
attr = ppdFindAttr(ppd, lkeyword, spec);
if (!attr && !strcmp(ll, "ja"))
{
/*
* Due to a bug in the CUPS DDK 1.1.0 ppdmerge program, Japanese
* PPD files were incorrectly assigned "jp" as the locale name
* instead of "ja". Support both the old (incorrect) and new
* locale names for Japanese...
*/
snprintf(lkeyword, sizeof(lkeyword), "jp.%s", keyword);
attr = ppdFindAttr(ppd, lkeyword, spec);
}
}
#ifdef DEBUG
+3 -59
Ver Arquivo
@@ -1003,7 +1003,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
for (i = 0, sptr = string; i < 4; i ++)
ppd->custom_margins[i] = (float)_cupsStrScand(sptr, &sptr, loc);
}
else if (!strncmp(keyword, "Custom", 6) && !strcmp(name, "True") && !option)
else if (!strncmp(keyword, "Custom", 6) && !strcmp(name, "True"))
{
DEBUG_puts("Processing Custom option...");
@@ -1076,34 +1076,6 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
*/
ppd_add_size(ppd, "Custom");
if ((option = ppdFindOption(ppd, "PageRegion")) == NULL)
{
ppd_group_t *gtemp; /* Temporary group */
if ((gtemp = ppd_get_group(ppd, "General", _("General"), cg,
encoding)) == NULL)
{
DEBUG_puts("Unable to get general group!");
goto error;
}
option = ppd_get_option(gtemp, "PageRegion");
}
if ((choice = ppd_add_choice(option, "Custom")) == NULL)
{
DEBUG_puts("Unable to add Custom choice!");
cg->ppd_status = PPD_ALLOC_ERROR;
goto error;
}
strlcpy(choice->text, text[0] ? text : _("Custom"),
sizeof(choice->text));
option = NULL;
}
}
else if (!strcmp(keyword, "LandscapeOrientation"))
@@ -1551,10 +1523,10 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
!strcmp(keyword, "NonUIConstraints"))
{
if (ppd->num_consts == 0)
constraint = calloc(2, sizeof(ppd_const_t));
constraint = calloc(1, sizeof(ppd_const_t));
else
constraint = realloc(ppd->consts,
(ppd->num_consts + 2) * sizeof(ppd_const_t));
(ppd->num_consts + 1) * sizeof(ppd_const_t));
if (constraint == NULL)
{
@@ -1715,34 +1687,6 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
break;
}
/*
* For CustomPageSize and InputSlot/ManualFeed, create a duplicate
* constraint for PageRegion...
*/
if (!strcasecmp(constraint->option1, "CustomPageSize") &&
(!strcasecmp(constraint->option2, "InputSlot") ||
!strcasecmp(constraint->option2, "ManualFeed")))
{
ppd->num_consts ++;
strcpy(constraint[1].option1, "PageRegion");
strcpy(constraint[1].choice1, "Custom");
strcpy(constraint[1].option2, constraint->option2);
strcpy(constraint[1].choice2, constraint->choice2);
}
else if (!strcasecmp(constraint->option2, "CustomPageSize") &&
(!strcasecmp(constraint->option1, "InputSlot") ||
!strcasecmp(constraint->option1, "ManualFeed")))
{
ppd->num_consts ++;
strcpy(constraint[1].option1, constraint->option1);
strcpy(constraint[1].choice1, constraint->choice1);
strcpy(constraint[1].option2, "PageRegion");
strcpy(constraint[1].choice2, "Custom");
}
/*
* Handle CustomFoo option constraints...
*/
+12 -15
Ver Arquivo
@@ -345,22 +345,19 @@ cupsDoFileRequest(http_t *http, /* I - HTTP connection to server */
while ((state = ippRead(http, response)) != IPP_DATA)
if (state == IPP_ERROR)
{
/*
* Delete the response...
*/
DEBUG_puts("IPP read error!");
ippDelete(response);
response = NULL;
_cupsSetError(IPP_SERVICE_UNAVAILABLE, strerror(errno));
break;
if (state == IPP_ERROR)
{
/*
* Delete the response...
*/
DEBUG_puts("IPP read error!");
ippDelete(response);
response = NULL;
_cupsSetError(IPP_SERVICE_UNAVAILABLE, strerror(errno));
break;
}
}
}
}
+2 -2
Ver Arquivo
@@ -266,9 +266,9 @@ _cupsStrFormatd(char *buf, /* I - String */
tempptr < tempdec && bufptr < bufend;
*bufptr++ = *tempptr++);
tempptr += declen;
tempdec += declen;
if (*tempptr && bufptr < bufend)
if (*tempdec && bufptr < bufend)
{
*bufptr++ = '.';
+1 -37
Ver Arquivo
@@ -34,7 +34,6 @@
#include <stdio.h>
#include "i18n.h"
#include "string.h"
/*
@@ -45,24 +44,10 @@ int /* O - Exit status */
main(int argc, /* I - Number of command-line arguments */
char *argv[]) /* I - Command-line arguments */
{
int i; /* Looping var */
int errors = 0; /* Number of errors */
cups_lang_t *language; /* Message catalog */
cups_lang_t *language2; /* Message catalog */
struct lconv *loc; /* Locale data */
char buffer[1024]; /* String buffer */
double number; /* Number */
static const char * const tests[] = /* Test strings */
{
"1",
"-1",
"3",
"5.125"
};
_cupsSetLocale(argv);
if (argc == 1)
{
language = cupsLangDefault();
@@ -76,8 +61,6 @@ main(int argc, /* I - Number of command-line arguments */
if (language != language2)
{
errors ++;
puts("**** ERROR: Language cache did not work! ****");
puts("First result from cupsLangGet:");
}
@@ -97,26 +80,7 @@ main(int argc, /* I - Number of command-line arguments */
printf("Yes = \"%s\"\n", _cupsLangString(language2, "Yes"));
}
loc = localeconv();
for (i = 0; i < (int)(sizeof(tests) / sizeof(tests[0])); i ++)
{
number = _cupsStrScand(tests[i], NULL, loc);
printf("_cupsStrScand(\"%s\") number=%f\n", tests[i], number);
_cupsStrFormatd(buffer, buffer + sizeof(buffer), number, loc);
printf("_cupsStrFormatd(%f) buffer=\"%s\"\n", number, buffer);
if (strcmp(buffer, tests[i]))
{
errors ++;
puts("**** ERROR: Bad formatted number! ****");
}
}
return (errors > 0);
return (0);
}
-2
Ver Arquivo
@@ -27,5 +27,3 @@ Name[pl]=Zarządzanie drukowaniem
Comment[pl]=Interfejs WWW CUPS
Name[it]=Gestione stampa
Comment[it]=Interfaccia web di CUPS
Name[zh_TW]=印表管理
Comment[zh_TW]=CUPS 網頁介面
+139
Ver Arquivo
@@ -137,3 +137,142 @@ WIDTH="15" HEIGHT="15" ALT=""></TD>
</TABLE>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<TITLE>Accueil - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
<LINK REL="SHORTCUT ICON" HREF="/favicon.ico" TYPE="image/x-icon">
</HEAD>
<BODY>
<TABLE WIDTH="100%" STYLE="height: 100%;" BORDER="0" CELLSPACING="0" CELLPADDING="0" SUMMARY="Common UNIX Printing System @CUPS_VERSION@">
<TR CLASS="header">
<TD VALIGN="TOP" WIDTH="15" ROWSPAN="2"><IMG SRC="/images/top-left.gif" WIDTH="15" HEIGHT="80" ALT=""></TD>
<TD VALIGN="TOP" WIDTH="55" ROWSPAN="2"><IMG SRC="/images/top-middle.gif" WIDTH="55" HEIGHT="80" ALT=""></TD>
<TD WIDTH="100%" HEIGHT="60"><H1>Common UNIX Printing System @CUPS_VERSION@@CUPS_REVISION@</H1></TD>
<TD ALIGN="RIGHT" VALIGN="TOP" WIDTH="15" ROWSPAN="2"><IMG
SRC="/images/top-right.gif" WIDTH="15" HEIGHT="15" ALT=""></TD>
</TR>
<TR CLASS="header"><TD WIDTH="100%" VALIGN="BOTTOM" NOWRAP>
<A CLASS="sel" HREF="/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Accueil&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/admin/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Administration&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/classes/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Classes&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/help/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Documentation/Aide&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/jobs/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Tâches&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/printers/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;Imprimantes&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
</TD></TR>
<TR CLASS="page">
<TD WIDTH="15">&nbsp;</TD>
<TD COLSPAN="2" WIDTH="100%" VALIGN="TOP" CLASS="page">
<H2 CLASS="title">Bienvenue !</H2>
<P>Ces pages Web vous permettent de gérer vos imprimantes et vos tâches
d'impression comme d'administrer le système. Cliquez sur les onglets ci-dessus ou
sur les boutons ci-dessous pour effectuer une action.</P>
<P>
<A HREF="/help/"><IMG SRC="/images/button-help.gif" CLASS="button" ALT="Aide"></A>
<A HREF="/admin?OP=add-class"><IMG SRC="/images/button-add-class.gif" CLASS="button" ALT="Ajouter une classe"></A>
<A HREF="/admin?OP=add-printer"><IMG SRC="/images/button-add-printer.gif" CLASS="button" ALT="Ajouter une imprimante"></A>
<A HREF="/classes"><IMG SRC="/images/button-manage-classes.gif" CLASS="button" ALT="Administrer les classes"></A>
<A HREF="/jobs"><IMG SRC="/images/button-manage-jobs.gif" CLASS="button" ALT="Administrer les tâches"></A>
<A HREF="/printers"><IMG SRC="/images/button-manage-printers.gif" CLASS="button" ALT="Administrer les imprimantes"></A>
<A HREF="/admin"><IMG SRC="/images/button-manage-server.gif" CLASS="button" ALT="Administrer le serveur"></A>
</P>
<P><I>Si l'on vous demande de vous identifier, utilisez votre nom d'utilisateur et
votre mot de passe UNIX ou bien identifiez-vous en tant que "root".</I></P>
<H2 CLASS="title">À propos de CUPS</H2>
<P>
<IMG SRC="/images/happy.gif" ALIGN="LEFT" WIDTH="196" HEIGHT="144"
STYLE="padding-right: 10px;" ALT="Ordinateur content et imprimante">
<A HREF="http://www.easysw.com/"><IMG SRC="/images/esp-logo.gif"
ALIGN="RIGHT" WIDTH="110" HEIGHT="68" BORDER="0"
STYLE="padding-left: 10px; padding-bottom: 10px;"
ALT="Easy Software Products"></A>
CUPS propose une interface portable pour l'impression sur les systèmes
UNIX<SUP>&reg;</SUP>. Ce logiciel est développé et maintenu par <A HREF="http://www.easysw.com">Easy Software
Products</a> afin de promouvoir une solution standard pour l'impression. CUPS
est le système d'impression standard de MacOS<SUP>&reg;</SUP> X et de la
plupart des distributions Linux<SUP>&reg;</SUP>.</P>
<P>CUPS repose sur le protocole <A HREF="http://www.pwg.org/ipp/"
TARGET="_blank">IPP ( Internet Printing Protocol )</A> pour la gestion des tâches
d'impression et, pour être utilisable en pratique, y ajoute la détection
d'imprimantes en réseau et des options d'impression fondées sur le format PPD (
PostScript Printer Description ).<BR CLEAR="ALL"></P>
<H2 CLASS="title">Pilotes d'imprimante et Assistance</H2>
<P>Visitez le site officiel de CUPS pour avoir des pilotes d'imprimante ou toute
autre assistance:</P>
<PRE>
<A HREF="http://www.cups.org/" TARGET="_blank">www.cups.org</A>
</PRE>
<P>Vous pouvez obtenir un suivi commercial et une version améliorée de CUPS, <A
HREF="http://www.easysw.com/printpro/">ESP Print Pro</A>, à l'adresse suivante:</P>
<PRE>
<A HREF="http://www.easysw.com/" TARGET="_blank">www.easysw.com</A>
</PRE>
</TD>
<TD WIDTH="15">&nbsp;</TD>
</TR>
<TR CLASS="header">
<TD VALIGN="BOTTOM" WIDTH="15"><IMG SRC="/images/bottom-left.gif"
WIDTH="15" HEIGHT="15" ALT=""></TD>
<TD COLSPAN="2" WIDTH="100%" STYLE="padding: 5;">
<P><SMALL>Le logiciel CUPS ( Common UNIX Printing System ) et son logo sont
propriété commerciale de <A HREF="http://www.easysw.com">Easy Software
Products</A>. CUPS est sous copyright 1997-2006 par Easy Software Products, Tous
Droits Réservés.</SMALL></P>
</TD>
<TD ALIGN="RIGHT" VALIGN="BOTTOM" WIDTH="15"><IMG SRC="/images/bottom-right.gif"
WIDTH="15" HEIGHT="15" ALT=""></TD>
</TR>
</TABLE>
</BODY>
</HTML>
+15 -18
Ver Arquivo
@@ -8,7 +8,7 @@
</head>
<body>
<!--
"$Id: spec-ppd.html 6458 2007-04-17 19:22:41Z mike $"
"$Id: spec-ppd.html 6158 2006-12-17 01:44:21Z mike $"
CUPS PPD extensions specification for the Common UNIX Printing System (CUPS).
@@ -204,13 +204,13 @@ http://www.vendor.com/help"
<p>This attribute describes which language localizations are
included in the PPD. The "locale list" string is a space-delimited
list of locale names ("en", "en_US", "fr_CA", etc.)</p>
list of locale names ("en", "en_US", "fr_FR", etc.)</p>
<p>Example:</p>
<pre class='command'>
<em>*% Specify Canadian, UK, and US English, and Candian and French French</em>
*cupsLanguages: "en_CA en_UK en_US fr_CA fr_CA"
*cupsLanguages: "en_CA en_UK en_US fr_CA fr_FR"
</pre>
<h3>cupsManualCopies</h3>
@@ -540,10 +540,7 @@ languages by following the following additional rules:</p>
<li>Localizations are specified using a locale prefix of
the form "ll" or "ll_CC." where "ll" is the 2-letter ISO
language code and "CC" is the 2-letter ISO country
code<ul>
<li>A generic language translation ("ll") SHOULD be provided with country-specific differences ("ll_CC") provided only as needed</li>
<li>For historical reasons, the "zh" and "zh_CN" locales map to Simplified Chinese while the "zh_TW" locale maps to Traditional Chinese</li>
</ul></li>
code</li>
<li>Locale-specific translation strings MUST be encoded
using UTF-8.</li>
@@ -580,17 +577,17 @@ in the PPD file for a given locale.</blockquote>
<pre class='command'>
*LanguageVersion: English
*LanguageEncoding: ISOLatin1
*cupsLanguages: "de fr_CA"
*cupsLanguages: "de_DE fr_FR"
*ModelName: "Foobar Laser 9999"
<em>*% Localize ModelName for French and German</em>
*fr_CA.Translation ModelName/La Foobar Laser 9999: ""
*de.Translation ModelName/Foobar LaserDrucken 9999: ""
*fr_FR.Translation ModelName/La Foobar Laser 9999: ""
*de_DE.Translation ModelName/Foobar LaserDrucken 9999: ""
*cupsIPPReason com.vendor-error/A serious error occurred: "/help/com.vendor/error.html"
<em>*% Localize printer-state-reason for French and German</em>
*fr_CA.cupsIPPReason com.vendor-error/Une erreur s&egrave;rieuse s'est produite: "/help/com.vendor/error.html"
*de.cupsIPPReason com.vendor-error/Eine ernste St&ouml;rung trat: "/help/com.vendor/error.html"
*fr_FR.cupsIPPReason com.vendor-error/Une erreur s&egrave;rieuse s'est produite: "/help/com.vendor/error.html"
*de_DE.cupsIPPReason com.vendor-error/Eine ernste St&ouml;rung trat: "/help/com.vendor/error.html"
...
@@ -598,16 +595,16 @@ in the PPD file for a given locale.</blockquote>
*OrderDependency: 10 AnySetup *InputSlot
*DefaultInputSlot: Auto
<em>*% Localize InputSlot for French and German</em>
*fr_CA.Translation InputSlot/Papier source: ""
*de.Translation InputSlot/Papiereinzug: ""
*fr_FR.Translation InputSlot/Papier source: ""
*de_DE.Translation InputSlot/Papiereinzug: ""
*InputSlot Auto/Default: "&lt;&lt;/ManualFeed false&gt;&gt;setpagedevice"
<em>*% Localize InputSlot=Auto for French and German</em>
*fr_CA.InputSlot Auto/Par Defaut: ""
*de.InputSlot Auto/Standard: ""
*fr_FR.InputSlot Auto/Par Defaut: ""
*de_DE.InputSlot Auto/Standard: ""
*InputSlot Manual/Manual Feed: "&lt;&lt;/ManualFeed true&gt;&gt;setpagedevice"
<em>*% Localize InputSlot=Manual for French and German</em>
*fr_CA.InputSlot Manual/Manuel mecanisme de alimentation: ""
*de.InputSlot Manual/Manueller Einzug: ""
*fr_FR.InputSlot Manual/Manuel mecanisme de alimentation: ""
*de_DE.InputSlot Manual/Manueller Einzug: ""
*CloseUI: *InputSlot
</pre>
Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 775 B

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.2 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.8 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 749 B

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.7 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 764 B

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.8 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.7 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.4 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.5 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.8 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.7 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.7 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.7 KiB

Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 1.6 KiB

-137
Ver Arquivo
@@ -1,137 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<TITLE>首頁 - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
<LINK REL="SHORTCUT ICON" HREF="/favicon.ico" TYPE="image/x-icon">
</HEAD>
<BODY>
<TABLE WIDTH="100%" STYLE="height: 100%;" BORDER="0" CELLSPACING="0" CELLPADDING="0" SUMMARY="Common UNIX Printing System @CUPS_VERSION@">
<TR CLASS="header">
<TD VALIGN="TOP" WIDTH="15" ROWSPAN="2"><IMG SRC="/images/top-left.gif" WIDTH="15" HEIGHT="80" ALT=""></TD>
<TD VALIGN="TOP" WIDTH="55" ROWSPAN="2"><IMG SRC="/images/top-middle.gif" WIDTH="55" HEIGHT="80" ALT=""></TD>
<TD WIDTH="100%" HEIGHT="60"><H1>Common UNIX Printing System @CUPS_VERSION@@CUPS_REVISION@</H1></TD>
<TD ALIGN="RIGHT" VALIGN="TOP" WIDTH="15" ROWSPAN="2"><IMG
SRC="/images/top-right.gif" WIDTH="15" HEIGHT="15" ALT=""></TD>
</TR>
<TR CLASS="header"><TD WIDTH="100%" VALIGN="BOTTOM" NOWRAP>
<A CLASS="sel" HREF="/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;首頁&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/admin/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;管理&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/classes/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;分類&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/help/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;文件/求助&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/jobs/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;工作&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
&nbsp;<A CLASS="unsel" HREF="/printers/"><IMG SRC="/images/tab-left.gif" WIDTH="4"
HEIGHT="4" ALIGN="TOP" BORDER="0"
ALT="">&nbsp;&nbsp;印表機&nbsp;&nbsp;<IMG
SRC="/images/tab-right.gif" WIDTH="4" HEIGHT="4" ALIGN="TOP"
BORDER="0" ALT=""></A>
</TD></TR>
<TR CLASS="page">
<TD WIDTH="15">&nbsp;</TD>
<TD COLSPAN="2" WIDTH="100%" VALIGN="TOP" CLASS="page">
<H2 CLASS="title">歡迎!</H2>
<P>此處的網頁讓您監看您的印表機和工作,以及
進行系統管理任務。按下上方任何的分頁頁標或是
下方的按鈕,以執行某個作業。</P>
<P>
<A HREF="/help/"><IMG SRC="/images/button-help.gif" CLASS="button" ALT="求助"></A>
<A HREF="/admin?OP=add-class"><IMG SRC="/images/button-add-class.gif" CLASS="button" ALT="增加分類"></A>
<A HREF="/admin?OP=add-printer"><IMG SRC="/images/button-add-printer.gif" CLASS="button" ALT="增加印表機"></A>
<A HREF="/classes"><IMG SRC="/images/button-manage-classes.gif" CLASS="button" ALT="管理分類"></A>
<A HREF="/jobs"><IMG SRC="/images/button-manage-jobs.gif" CLASS="button" ALT="管理工作"></A>
<A HREF="/printers"><IMG SRC="/images/button-manage-printers.gif" CLASS="button" ALT="管理印表機"></A>
<A HREF="/admin"><IMG SRC="/images/button-manage-server.gif" CLASS="button" ALT="管理伺服器"></A>
</P>
<P><I>如果向您要求使用者名稱與密碼,請輸入
您的使用者名稱與密碼,或是 "root" 的使用者名稱與密碼。</I></P>
<H2 CLASS="title">關於 CUPS</H2>
<P>
<IMG SRC="/images/happy.gif" ALIGN="LEFT" WIDTH="196" HEIGHT="144"
STYLE="padding-right: 10px;" ALT="快樂的電腦與印表機">
<A HREF="http://www.easysw.com/"><IMG SRC="/images/esp-logo.gif"
ALIGN="RIGHT" WIDTH="110" HEIGHT="68" BORDER="0"
STYLE="padding-left: 10px; padding-bottom: 10px;"
ALT="Easy Software Products"></A>
CUPS 提供以 UNIX<SUP>&reg;</SUP> 為基礎的作業系統
一層具有可攜性的列印介面。它是由 <A HREF="http://www.easysw.com">Easy Software
Products</a> 為了推動一個標準的列印解決方案所開發與維護。CUPS 是目前用於
MacOS<SUP>&reg;</SUP> X 與大部份 Linux<SUP>&reg;</SUP> 發行版本的標準列印系統。</P>
<P>CUPS 使用 <A HREF="http://www.pwg.org/ipp/"
TARGET="_blank"> Internet Printing Protocol ("IPP")</A> 做為
管理列印工作與佇列的基礎,並且加入瀏覽網路印表機和基於
PostScript Printer Description ("PPD") 的列印選項,
以支援真實世界中的列印。<BR CLEAR="ALL"></P>
<H2 CLASS="title">印表機驅動程式與協助</H2>
<P>造訪 CUPS 的官方網站以獲得印表機驅動程式與協助:</P>
<PRE>
<A HREF="http://www.cups.org/" TARGET="_blank">www.cups.org</A>
</PRE>
<P>CUPS 的商業支援與進階版本名為 <A
HREF="http://www.easysw.com/printpro/">ESP Print Pro</A> 是提供自:</P>
<PRE>
<A HREF="http://www.easysw.com/" TARGET="_blank">www.easysw.com</A>
</PRE>
</TD>
<TD WIDTH="15">&nbsp;</TD>
</TR>
<TR CLASS="header">
<TD VALIGN="BOTTOM" WIDTH="15"><IMG SRC="/images/bottom-left.gif"
WIDTH="15" HEIGHT="15" ALT=""></TD>
<TD COLSPAN="2" WIDTH="100%" STYLE="padding: 5;">
<P><SMALL>The Common UNIX Printing System, CUPS, and the CUPS logo are the
trademark property of <A HREF="http://www.easysw.com">Easy Software
Products</A>. CUPS is copyright 1997-2007 by Easy Software Products,
All Rights Reserved.</SMALL></P>
</TD>
<TD ALIGN="RIGHT" VALIGN="BOTTOM" WIDTH="15"><IMG SRC="/images/bottom-right.gif"
WIDTH="15" HEIGHT="15" ALT=""></TD>
</TR>
</TABLE>
</BODY>
</HTML>
+1 -1
Ver Arquivo
@@ -248,7 +248,7 @@ cupsRasterInterpretPPD(
{
float sc = atof(val);
if (sc >= 0.5 && sc <= 2.0)
if (sc >= 0.9 && sc <= 1.1)
h->cupsBorderlessScalingFactor = sc;
}
+3 -7
Ver Arquivo
@@ -1245,9 +1245,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
pageinfo->num_options = cupsAddOption("InputSlot", doc->ap_input_slot,
pageinfo->num_options,
&(pageinfo->options));
pageinfo->num_options = cupsAddOption("ManualFeed",
doc->ap_input_slot ? "False" :
doc->ap_manual_feed,
pageinfo->num_options = cupsAddOption("ManualFeed", doc->ap_manual_feed,
pageinfo->num_options,
&(pageinfo->options));
}
@@ -1260,9 +1258,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
pageinfo->num_options = cupsAddOption("InputSlot", doc->input_slot,
pageinfo->num_options,
&(pageinfo->options));
pageinfo->num_options = cupsAddOption("ManualFeed",
doc->input_slot ? "False" :
doc->manual_feed,
pageinfo->num_options = cupsAddOption("ManualFeed", doc->manual_feed,
pageinfo->num_options,
&(pageinfo->options));
}
@@ -1541,7 +1537,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
if (doc->number_up > 1 || doc->fitplot)
continue;
}
else if (!strncmp(line, "%%EndFeature", 12))
else if (!strncmp(line, "%%EndFeature:", 13))
{
feature = 0;
BIN
Ver Arquivo
Arquivo binário não exibido.
-28
Ver Arquivo
@@ -1,28 +0,0 @@
#!/bin/sh
##
# PrintingServices - a.k.a. CUPS
##
. /etc/rc.common
StartService ()
{
ConsoleMessage "Starting printing services"
launchctl start org.cups.cupsd
}
StopService ()
{
ConsoleMessage "Stopping printing services"
launchctl stop org.cups.cupsd
}
RestartService ()
{
ConsoleMessage "Restarting printing services"
launchctl stop org.cups.cupsd
launchctl start org.cups.cupsd
}
RunService "$1"
+1 -1
Ver Arquivo
@@ -141,7 +141,7 @@ unset TMPDIR
# provide a standard path on boot-up...
#
if test "x$PATH" = x; then
if "x$PATH" = x; then
PATH="/bin:/usr/bin:/sbin:/usr/sbin"
else
PATH="/bin:/usr/bin:/sbin:/usr/sbin:$PATH"
+3 -17
Ver Arquivo
@@ -6,21 +6,13 @@
<string>org.cups.cupsd</string>
<key>OnDemand</key>
<true/>
<key>KeepAlive</key>
<dict>
<key>PathState</key>
<dict>
<key>/private/var/spool/cups/cache/org.cups.cupsd</key>
<true/>
</dict>
</dict>
<key>RunAtLoad</key>
<false/>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/cupsd</string>
<string>-l</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<true/>
<key>Sockets</key>
@@ -29,13 +21,7 @@
<array>
<dict>
<key>SockNodeName</key>
<string>::1</string>
<key>SockServiceName</key>
<string>ipp</string>
</dict>
<dict>
<key>SockNodeName</key>
<string>127.0.0.1</string>
<string>localhost</string>
<key>SockServiceName</key>
<string>ipp</string>
</dict>
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
+2 -28
Ver Arquivo
@@ -128,9 +128,6 @@
%subpackage sv
%description Swedish support
%subpackage zh
%description Chinese support
%subpackage
@@ -377,8 +374,6 @@ f 0644 root sys $LOCALEDIR/ja/cups_ja.po locale/cups_ja.po
f 0644 root sys $LOCALEDIR/pl/cups_pl.po locale/cups_pl.po
%subpackage sv
f 0644 root sys $LOCALEDIR/sv/cups_sv.po locale/cups_sv.po
%subpackage zh
f 0644 root sys $LOCALEDIR/zh_TW/cups_zh_TW.po locale/cups_zh_TW.po
%subpackage
d 0755 root sys $DATADIR -
@@ -433,7 +428,7 @@ d 0755 root sys $DATADIR/model -
f 0644 root sys $DATADIR/model ppd/*.ppd
d 0755 root sys $DATADIR/templates -
f 0644 root sys $DATADIR/templates templates/*.tmpl
c 0644 root sys $DATADIR/templates templates/*.tmpl
# Japanese template files
%subpackage de
@@ -460,9 +455,6 @@ f 0644 root sys $DATADIR/templates/pl templates/pl/*.tmpl
%subpackage sv
d 0755 root sys $DATADIR/templates/sv
f 0644 root sys $DATADIR/templates/sv templates/sv/*.tmpl
%subpackage zh
d 0755 root sys $DATADIR/templates/zh_TW
f 0644 root sys $DATADIR/templates/zh_TW templates/zh_TW/*.tmpl
%subpackage
# Config files
@@ -574,11 +566,6 @@ d 0755 root sys $DOCDIR/sv
f 0644 root sys $DOCDIR/sv doc/sv/*.html
d 0755 root sys $DOCDIR/sv/images -
f 0644 root sys $DOCDIR/sv/images doc/sv/images/*.gif
%subpackage zh
d 0755 root sys $DOCDIR/zh_TW
f 0644 root sys $DOCDIR/zh_TW doc/zh_TW/*.html
d 0755 root sys $DOCDIR/zh_TW/images -
f 0644 root sys $DOCDIR/zh_TW/images doc/zh_TW/images/*.gif
%subpackage
# Man pages
@@ -633,26 +620,13 @@ f 0644 root sys $AMANDIR/man$MAN8DIR/cups-lpd.$MAN8EXT man/cups-lpd.$MAN8EXT
# Startup scripts
%system darwin
f 0644 root sys /System/Library/LaunchDaemons/org.cups.cupsd.plist init/org.cups.cupsd.plist
d 0755 root sys /System/Library/StartupItems/PrintingServices -
f 0644 root sys /System/Library/StartupItems/PrintingServices/PrintingServices init/PrintingServices.launchd
f 0644 root sys /System/Library/StartupItems/PrintingServices/StartupParamters.plist init/StartupParameters.plist
d 0755 root sys /System/Library/StartupItems/PrintingServices/Resources -
d 0755 root sys /System/Library/StartupItems/PrintingServices/Resources/English.lproj -
f 0644 root sys /System/Library/StartupItems/PrintingServices/Resources/English.lproj/Localizable.strings init/Localizable.strings
%preremove <<EOF
launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist || exit 0
killall cupsd
EOF
%postinstall <<EOF
rm -f /System/Library/StartupItems/PrintingServices/PrintingServices
launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist || exit 0
launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
launchctl start org.cups.cupsd
EOF
%subpackage lpd
f 0644 root sys /System/Library/LaunchDaemons/org.cups.cups-lpd.plist init/org.cups.cups-lpd.plist
%preremove <<EOF
launchctl unload /System/Library/LaunchDaemons/org.cups.cups-lpd.plist || exit 0
EOF
%postinstall <<EOF
rm -f /etc/xinetd.d/cups-lpd
launchctl unload /System/Library/LaunchDaemons/org.cups.cups-lpd.plist || exit 0
+1 -20
Ver Arquivo
@@ -5,7 +5,7 @@
#
# Original version by Jason McMullan <jmcc@ontv.com>.
#
# Copyright 1999-2007 by Easy Software Products, all rights reserved.
# Copyright 1999-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
# property of Easy Software Products and are protected by Federal
@@ -116,11 +116,6 @@ Summary: Common UNIX Printing System - Swedish support
Group: System Environment/Daemons
Requires: %{name} = %{epoch}:%{version}
%package zh
Summary: Common UNIX Printing System - Chinese support
Group: System Environment/Daemons
Requires: %{name} = %{epoch}:%{version}
%if %{?_with_php:1}%{!?_with_php:0}
%package php
Summary: Common UNIX Printing System - PHP support
@@ -179,10 +174,6 @@ UNIX
The Common UNIX Printing System provides a portable printing layer for
UNIX® operating systems. This package provides Swedish support.
%description zh
The Common UNIX Printing System provides a portable printing layer for
UNIX® operating systems. This package provides Chinese support.
%if %{?_with_php:1}%{!?_with_php:0}
%description php
The Common UNIX Printing System provides a portable printing layer for
@@ -498,16 +489,6 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/cups/templates/sv/*
/usr/share/locale/sv/cups_sv.po
%files zh
%defattr(-,root,root)
%dir /usr/share/doc/cups/zh_TW
/usr/share/doc/cups/zh_TW/index.html
%dir /usr/share/doc/cups/zh_TW/images
/usr/share/doc/cups/zh_TW/images/*
%dir /usr/share/cups/templates/zh_TW
/usr/share/cups/templates/zh_TW/*
/usr/share/locale/zh_TW/cups_zh_TW.po
%if %{?_with_php:1}%{!?_with_php:0}
%files php
# PHP
+5 -15
Ver Arquivo
@@ -23,12 +23,6 @@
#include "Link.h"
#include "Catalog.h"
// This define is used to limit the depth of recursive readPageTree calls
// This is needed because the page tree nodes can reference their parents
// leaving us in an infinite loop
// Most sane pdf documents don't have a call depth higher than 10
#define MAX_CALL_DEPTH 1000
//------------------------------------------------------------------------
// Catalog
//------------------------------------------------------------------------
@@ -77,7 +71,7 @@ Catalog::Catalog(XRef *xrefA) {
pageRefs[i].num = -1;
pageRefs[i].gen = -1;
}
numPages = readPageTree(pagesDict.getDict(), NULL, 0, 0);
numPages = readPageTree(pagesDict.getDict(), NULL, 0);
if (numPages != numPages0) {
error(-1, "Page count in top-level pages object is incorrect");
}
@@ -175,7 +169,7 @@ GString *Catalog::readMetadata() {
return s;
}
int Catalog::readPageTree(Dict *pagesDict, PageAttrs *attrs, int start, int callDepth) {
int Catalog::readPageTree(Dict *pagesDict, PageAttrs *attrs, int start) {
Object kids;
Object kid;
Object kidRef;
@@ -220,13 +214,9 @@ int Catalog::readPageTree(Dict *pagesDict, PageAttrs *attrs, int start, int call
// This should really be isDict("Pages"), but I've seen at least one
// PDF file where the /Type entry is missing.
} else if (kid.isDict()) {
if (callDepth > MAX_CALL_DEPTH) {
error(-1, "Limit of %d recursive calls reached while reading the page tree. If your document is correct and not a test to try to force a crash, please report a bug.", MAX_CALL_DEPTH);
} else {
if ((start = readPageTree(kid.getDict(), attrs1, start, callDepth + 1))
< 0)
goto err2;
}
if ((start = readPageTree(kid.getDict(), attrs1, start))
< 0)
goto err2;
} else {
error(-1, "Kid object (page %d) is wrong type (%s)",
start+1, kid.getTypeName());
+1 -1
Ver Arquivo
@@ -85,7 +85,7 @@ private:
Object acroForm; // AcroForm dictionary
GBool ok; // true if catalog is valid
int readPageTree(Dict *pages, PageAttrs *attrs, int start, int callDepth);
int readPageTree(Dict *pages, PageAttrs *attrs, int start);
Object *findDestInTree(Object *tree, GString *name, Object *obj);
};
+5 -15
Ver Arquivo
@@ -1159,14 +1159,7 @@ void PSOutputDev::writeHeader(int firstPage, int lastPage,
}
// Tell CUPS pstops filter not to do its own rotation...
int cups_rotate = 0;
int width = (int)ceil(mediaBox->x2 - mediaBox->x1);
int height = (int)ceil(mediaBox->y2 - mediaBox->y1);
int imgWidth = (int)ceil(cropBox->x2 - cropBox->x1);
if (width > height && width > imgWidth) cups_rotate = 90;
writePSFmt("%%cupsRotation: %d\n", cups_rotate);
writePSFmt("%%cupsRotation: %d\n", pageRotate);
writePSFmt("%%Producer: xpdf/pdftops %s\n", xpdfVersion);
xref->getDocInfo(&info);
@@ -2518,19 +2511,17 @@ GBool PSOutputDev::startPage(int pageNum, GfxState *state) {
landscape = gFalse;
} else {
rotate = (360 - state->getRotate()) % 360;
fprintf(stderr, "DEBUG: Page rotate=%d, width=%d, height=%d, imgWidth=%d, imgHeight=%d\n",
state->getRotate(), width, height, imgWidth, imgHeight);
if (rotate == 0 || rotate == 180) {
if (width > height && width > imgWidth) {
if ((width > height && imgWidth < imgHeight) ||
(height > width && imgHeight < imgWidth)) {
rotate += 90;
landscape = gTrue;
} else {
landscape = gFalse;
}
} else { // rotate == 90 || rotate == 270
if (height > width && height > imgWidth) {
if ((width > height && imgWidth < imgHeight) ||
(height > width && imgHeight < imgWidth)) {
rotate = 270 - rotate;
landscape = gTrue;
} else {
@@ -2538,7 +2529,6 @@ GBool PSOutputDev::startPage(int pageNum, GfxState *state) {
}
}
}
writePSFmt("%%%%PageOrientation: %s\n",
landscape ? "Landscape" : "Portrait");
writePS("pdfStartPage\n");
+1 -22
Ver Arquivo
@@ -265,14 +265,6 @@ cupsdFindAvailablePrinter(
return (NULL);
}
/*
* Make sure that the last printer is also a valid index into the printer
* array. If not, reset the last printer to 0...
*/
if (c->last_printer >= c->num_printers)
c->last_printer = 0;
/*
* Loop through the printers in the class and return the first idle
* printer... We keep track of the last printer that we used so that
@@ -675,20 +667,7 @@ cupsdLoadAllClasses(void)
else if (!strcasecmp(line, "OpPolicy"))
{
if (value)
{
cupsd_policy_t *pol; /* Policy */
if ((pol = cupsdFindPolicy(value)) != NULL)
{
cupsdSetString(&p->op_policy, value);
p->op_policy_ptr = pol;
}
else
cupsdLogMessage(CUPSD_LOG_ERROR,
"Bad policy \"%s\" on line %d of classes.conf",
value, linenum);
}
cupsdSetString(&p->op_policy, value);
else
{
cupsdLogMessage(CUPSD_LOG_ERROR,
+10 -34
Ver Arquivo
@@ -3344,9 +3344,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetString(&con->command, CUPS_JAVA);
if (options)
cupsdSetStringf(&con->options, " %s %s", filename, options);
cupsdSetStringf(&con->options, "%s %s", filename, options);
else
cupsdSetStringf(&con->options, " %s", filename);
cupsdSetString(&con->options, filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"is_cgi: Returning 1 with command=\"%s\" and options=\"%s\"",
@@ -3365,9 +3365,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetString(&con->command, CUPS_PERL);
if (options)
cupsdSetStringf(&con->options, " %s %s", filename, options);
cupsdSetStringf(&con->options, "%s %s", filename, options);
else
cupsdSetStringf(&con->options, " %s", filename);
cupsdSetString(&con->options, filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"is_cgi: Returning 1 with command=\"%s\" and options=\"%s\"",
@@ -3386,9 +3386,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetString(&con->command, CUPS_PHP);
if (options)
cupsdSetStringf(&con->options, " %s %s", filename, options);
cupsdSetStringf(&con->options, "%s %s", filename, options);
else
cupsdSetStringf(&con->options, " %s", filename);
cupsdSetString(&con->options, filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"is_cgi: Returning 1 with command=\"%s\" and options=\"%s\"",
@@ -3407,9 +3407,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetString(&con->command, CUPS_PYTHON);
if (options)
cupsdSetStringf(&con->options, " %s %s", filename, options);
cupsdSetStringf(&con->options, "%s %s", filename, options);
else
cupsdSetStringf(&con->options, " %s", filename);
cupsdSetString(&con->options, filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"is_cgi: Returning 1 with command=\"%s\" and options=\"%s\"",
@@ -3928,9 +3928,8 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
int envc; /* Number of environment variables */
char argbuf[10240], /* Argument buffer */
*argv[100], /* Argument strings */
*envp[MAX_ENV + 20]; /* Environment variables */
char auth_type[256], /* AUTH_TYPE environment variable */
content_length[1024], /* CONTENT_LENGTH environment variable */
*envp[MAX_ENV + 17]; /* Environment variables */
char content_length[1024], /* CONTENT_LENGTH environment variable */
content_type[1024], /* CONTENT_TYPE environment variable */
http_cookie[32768], /* HTTP_COOKIE environment variable */
http_user_agent[1024], /* HTTP_USER_AGENT environment variable */
@@ -3939,7 +3938,6 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
remote_addr[1024], /* REMOTE_ADDR environment variable */
remote_host[1024], /* REMOTE_HOST environment variable */
remote_user[1024], /* REMOTE_USER environment variable */
script_filename[1024], /* SCRIPT_FILENAME environment variable */
script_name[1024], /* SCRIPT_NAME environment variable */
server_name[1024], /* SERVER_NAME environment variable */
server_port[1024]; /* SERVER_PORT environment variable */
@@ -3992,9 +3990,6 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
{
commptr = argbuf;
path_info[0] = '\0';
if (*commptr == ' ')
commptr ++;
}
cupsdLogMessage(CUPSD_LOG_INFO, "commptr=\"%s\"", commptr);
@@ -4069,17 +4064,6 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
* Setup the environment variables as needed...
*/
if (con->username[0])
{
snprintf(auth_type, sizeof(auth_type), "AUTH_TYPE=%s",
httpGetField(HTTP(con), HTTP_FIELD_AUTHORIZATION));
if ((uriptr = strchr(auth_type + 10, ' ')) != NULL)
*uriptr = '\0';
}
else
auth_type[0] = '\0';
if (con->language)
snprintf(lang, sizeof(lang), "LANG=%s.UTF-8", con->language->language);
else
@@ -4096,9 +4080,6 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
if ((uriptr = strchr(script_name, '?')) != NULL)
*uriptr = '\0';
snprintf(script_filename, sizeof(script_filename), "SCRIPT_FILENAME=%s%s",
DocumentRoot, script_name + 12);
sprintf(server_port, "SERVER_PORT=%d", con->serverport);
snprintf(server_name, sizeof(server_name), "SERVER_NAME=%s",
@@ -4106,18 +4087,13 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
envc = cupsdLoadEnv(envp, (int)(sizeof(envp) / sizeof(envp[0])));
if (auth_type[0])
envp[envc ++] = auth_type;
envp[envc ++] = lang;
envp[envc ++] = "REDIRECT_STATUS=1";
envp[envc ++] = "GATEWAY_INTERFACE=CGI/1.1";
envp[envc ++] = server_name;
envp[envc ++] = server_port;
envp[envc ++] = remote_addr;
envp[envc ++] = remote_host;
envp[envc ++] = script_name;
envp[envc ++] = script_filename;
if (path_info[0])
envp[envc ++] = path_info;
+4 -5
Ver Arquivo
@@ -1146,7 +1146,7 @@ check_permissions(const char *filename, /* I - File/directory name */
{
if (errno == ENOENT && create_dir)
{
cupsdLogMessage(CUPSD_LOG_DEBUG, "Creating missing directory \"%s\"",
cupsdLogMessage(CUPSD_LOG_ERROR, "Creating missing directory \"%s\"",
filename);
if (mkdir(filename, mode))
@@ -1185,9 +1185,9 @@ check_permissions(const char *filename, /* I - File/directory name */
if (dir_created || fileinfo.st_uid != user || fileinfo.st_gid != group)
{
cupsdLogMessage(CUPSD_LOG_DEBUG, "Repairing ownership of \"%s\"", filename);
cupsdLogMessage(CUPSD_LOG_WARN, "Repairing ownership of \"%s\"", filename);
if (chown(filename, user, group) && !getuid())
if (chown(filename, user, group))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"Unable to change ownership of \"%s\" - %s", filename,
@@ -1198,8 +1198,7 @@ check_permissions(const char *filename, /* I - File/directory name */
if (dir_created || (fileinfo.st_mode & 07777) != mode)
{
cupsdLogMessage(CUPSD_LOG_DEBUG, "Repairing access permissions of \"%s\"",
filename);
cupsdLogMessage(CUPSD_LOG_WARN, "Repairing access permissions of \"%s\"", filename);
if (chmod(filename, mode))
{
+2 -2
Ver Arquivo
@@ -675,7 +675,7 @@ load_ppds(const char *d, /* I - Actual directory */
*language; /* Language code */
} languages[] =
{
{ "chinese", "zh" },
{ "chinese", "cn" },
{ "danish", "da" },
{ "dutch", "nl" },
{ "english", "en" },
@@ -684,7 +684,7 @@ load_ppds(const char *d, /* I - Actual directory */
{ "german", "de" },
{ "greek", "el" },
{ "italian", "it" },
{ "japanese", "ja" },
{ "japanese", "jp" },
{ "norwegian", "no" },
{ "polish", "pl" },
{ "portuguese", "pt" },
+1 -1
Ver Arquivo
@@ -2627,7 +2627,7 @@ send_cups_browse(cupsd_printer_t *p) /* I - Printer to send */
{
httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "ipp", NULL,
iface->hostname, iface->port,
(p->type & CUPS_PRINTER_CLASS) ? "/classes/%s" :
(p->type & CUPS_PRINTER_CLASS) ? "/classes/%s%s" :
"/printers/%s",
p->name);
snprintf(packet, sizeof(packet), "%x %x %s \"%s\" \"%s\" \"%s\" %s\n",
+4 -7
Ver Arquivo
@@ -1823,7 +1823,7 @@ add_job_subscriptions(
while (attr && attr->group_tag != IPP_TAG_ZERO)
{
if (!strcmp(attr->name, "notify-recipient-uri") &&
if (!strcmp(attr->name, "notify-recipient") &&
attr->value_tag == IPP_TAG_URI)
recipient = attr->values[0].string.text;
else if (!strcmp(attr->name, "notify-pull-method") &&
@@ -4792,7 +4792,7 @@ create_subscription(
while (attr && attr->group_tag != IPP_TAG_ZERO)
{
if (!strcmp(attr->name, "notify-recipient-uri") &&
if (!strcmp(attr->name, "notify-recipient") &&
attr->value_tag == IPP_TAG_URI)
{
/*
@@ -4811,7 +4811,7 @@ create_subscription(
resource, sizeof(resource)) < HTTP_URI_OK)
{
send_ipp_status(con, IPP_NOT_POSSIBLE,
_("Bad notify-recipient-uri URI \"%s\"!"), recipient);
_("Bad notify-recipient URI \"%s\"!"), recipient);
ippAddInteger(con->response, IPP_TAG_SUBSCRIPTION, IPP_TAG_ENUM,
"notify-status-code", IPP_URI_SCHEME);
return;
@@ -4822,7 +4822,7 @@ create_subscription(
if (access(notifier, X_OK))
{
send_ipp_status(con, IPP_NOT_POSSIBLE,
_("notify-recipient-uri URI \"%s\" uses unknown scheme!"),
_("notify-recipient URI \"%s\" uses unknown scheme!"),
recipient);
ippAddInteger(con->response, IPP_TAG_SUBSCRIPTION, IPP_TAG_ENUM,
"notify-status-code", IPP_URI_SCHEME);
@@ -7356,9 +7356,6 @@ renew_subscription(
cupsdSaveAllSubscriptions();
con->response->request.status.status_code = IPP_OK;
ippAddInteger(con->response, IPP_TAG_SUBSCRIPTION, IPP_TAG_INTEGER,
"notify-lease-duration", sub->lease);
}
+6 -9
Ver Arquivo
@@ -199,11 +199,12 @@ cupsdCancelJob(cupsd_job_t *job, /* I - Job to cancel */
case IPP_JOB_COMPLETED :
/*
* Clear the printer's printer-state-message and move on...
* Clear the printer's state_message and state_reasons and move on...
*/
printer->state_message[0] = '\0';
cupsdSetPrinterReasons(printer, "");
cupsdSetPrinterState(printer, IPP_PRINTER_IDLE, 0);
cupsdAddEvent(CUPSD_EVENT_JOB_COMPLETED, printer, job,
@@ -372,12 +373,11 @@ cupsdCheckJobs(void)
pclass = printer;
if (pclass->state == IPP_PRINTER_STOPPED)
printer = NULL;
else if (pclass->type & CUPS_PRINTER_REMOTE)
break;
if (!(pclass->type & CUPS_PRINTER_REMOTE) &&
pclass->state != IPP_PRINTER_STOPPED)
printer = cupsdFindAvailablePrinter(job->dest);
else
printer = cupsdFindAvailablePrinter(printer->name);
printer = NULL;
}
if (!printer && !pclass)
@@ -2839,7 +2839,6 @@ start_job(cupsd_job_t *job, /* I - Job ID */
if ((!strcmp(attr->name, "page-label") ||
!strcmp(attr->name, "page-border") ||
!strncmp(attr->name, "number-up", 9) ||
!strcmp(attr->name, "page-ranges") ||
!strcmp(attr->name, "page-set") ||
!strcasecmp(attr->name, "AP_FIRSTPAGE_InputSlot") ||
!strcasecmp(attr->name, "AP_FIRSTPAGE_ManualFeed")) &&
@@ -3432,8 +3431,6 @@ start_job(cupsd_job_t *job, /* I - Job ID */
cupsdClosePipe(job->status_pipes);
cupsdStatBufDelete(job->status_buffer);
job->status_buffer = NULL;
cupsArrayDelete(filters);
if (printer->remote && job->num_files > 1)

Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais