Comparar commits
2 Commits
| Autor | SHA1 | Data | |
|---|---|---|---|
| b60086f8ae | |||
| 215ef63830 |
+38
-5
@@ -1,6 +1,43 @@
|
||||
CHANGES.txt - 1.7.3 - 2014-05-27
|
||||
CHANGES.txt - 1.7.5 - 2014-07-30
|
||||
--------------------------------
|
||||
|
||||
CHANGES IN CUPS V1.7.5
|
||||
|
||||
- Security: Addressed some more situations where symlinked files would
|
||||
be served by the web interface (STR #4455)
|
||||
- The LPD backend did not work with some versions of glibc (STR #4452)
|
||||
- CGI scripts did not work (STR #4454)
|
||||
- The cupsd.conf man page did not list the ErrorPolicy directive
|
||||
(STR #4457)
|
||||
- Updated the Brazilian Portuguese translation (STR #4456)
|
||||
|
||||
|
||||
CHANGES IN CUPS V1.7.4
|
||||
|
||||
- Security: The web interface incorrectly served symlinked files and
|
||||
files that were not world-readable, potentially leading to a
|
||||
disclosure of information (STR #4450)
|
||||
- The CUPS headers incorrectly needed libdispatch for blocks support
|
||||
(STR #4397)
|
||||
- CUPS did not compile when Avahi or mDNSResponder was not present
|
||||
(STR #4402, STR #4424)
|
||||
- The "snmp" option did not work with the network backends (STR #4422)
|
||||
- The User directive in client.conf did not override the USER
|
||||
environment variable (STR #4426)
|
||||
- The web interface now properly shows a "Go" button for all text-based
|
||||
browsers (STR #4425)
|
||||
- The MaxJobTime directive now properly supports time values (STR #4434)
|
||||
- The RPM spec file did not work due to the new Brazilian Portuguese
|
||||
localization (STR #4436)
|
||||
- Fixed an "IPP read error" issue (STR #4440)
|
||||
- Fixed the --disable-libusb configure option (STR #4439)
|
||||
- Fixed the debug output from the DNS-SD backend when using Avahi
|
||||
(STR #4444)
|
||||
- Fixed a bug in the CUPS_SC_GET_DEVICE_ID handling by the network
|
||||
backends (STR #4447)
|
||||
- Added USB quirk rule for Lexmark E230 (STR #4448)
|
||||
|
||||
|
||||
CHANGES IN CUPS V1.7.3
|
||||
|
||||
- Added Brazilian Portuguese translation (STR #4409)
|
||||
@@ -15,12 +52,8 @@ CHANGES IN CUPS V1.7.3
|
||||
- Fixed an authentication race condition in cupsSendRequest (STR #4403)
|
||||
- The scheduler did not add the "job-hold-until-specified" reason when
|
||||
holding a job using the lp command (STR #4405)
|
||||
- The CUPS headers incorrectly needed libdispatch for blocks support
|
||||
(STR #4397)
|
||||
- The configure script incorrectly added libgcrypt as a GNU TLS
|
||||
dependency (STR #4399)
|
||||
- CUPS did not compile when Avahi or mDNSResponder was not present
|
||||
(STR #4402)
|
||||
- cupsGetDestMediaCount did not work for CUPS_MEDIA_FLAGS DEFAULT
|
||||
(STR #4414)
|
||||
- Auto-typing of PWG Raster files did not work (STR #4417)
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
INSTALL - CUPS v1.7.3 - 2014-05-27
|
||||
INSTALL - CUPS v1.7.5 - 2014-07-30
|
||||
----------------------------------
|
||||
|
||||
This file describes how to compile and install CUPS from source code. For more
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
README - CUPS v1.7.3 - 2014-05-27
|
||||
README - CUPS v1.7.5 - 2014-07-30
|
||||
---------------------------------
|
||||
|
||||
Looking for compile instructions? Read the file "INSTALL.txt" instead...
|
||||
|
||||
+15
-28
@@ -1,33 +1,17 @@
|
||||
/*
|
||||
* "$Id: dnssd.c 11623 2014-02-19 20:18:10Z msweet $"
|
||||
* "$Id: dnssd.c 11971 2014-07-01 14:38:29Z msweet $"
|
||||
*
|
||||
* DNS-SD discovery backend for CUPS.
|
||||
* DNS-SD discovery backend for CUPS.
|
||||
*
|
||||
* Copyright 2008-2012 by Apple Inc.
|
||||
* Copyright 2008-2014 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"
|
||||
* "LICENSE" which should have been included with this file. If this
|
||||
* file is missing or damaged, see the license at "http://www.cups.org/".
|
||||
* 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"
|
||||
* "LICENSE" which should have been included with this file. If this
|
||||
* file is missing or damaged, see the license at "http://www.cups.org/".
|
||||
*
|
||||
* This file is subject to the Apple OS-Developed Software exception.
|
||||
*
|
||||
* Contents:
|
||||
*
|
||||
* main() - Browse for printers.
|
||||
* browse_callback() - Browse devices.
|
||||
* browse_local_callback() - Browse local devices.
|
||||
* client_callback() - Avahi client callback function.
|
||||
* compare_devices() - Compare two devices.
|
||||
* exec_backend() - Execute the backend that corresponds to the
|
||||
* resolved service name.
|
||||
* device_type() - Get DNS-SD type enumeration from string.
|
||||
* get_device() - Create or update a device.
|
||||
* query_callback() - Process query data.
|
||||
* find_device() - Find a device from its name and domain.
|
||||
* sigterm_handler() - Handle termination signals.
|
||||
* unquote() - Unquote a name string.
|
||||
* This file is subject to the Apple OS-Developed Software exception.
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -924,8 +908,11 @@ get_device(cups_array_t *devices, /* I - Device array */
|
||||
* Yes, add the device...
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: Found \"%s.%s%s\"...\n", serviceName, regtype,
|
||||
replyDomain);
|
||||
#ifdef HAVE_DNSSD
|
||||
fprintf(stderr, "DEBUG: Found \"%s.%s%s\"...\n", serviceName, regtype, replyDomain);
|
||||
#else /* HAVE_AVAHI */
|
||||
fprintf(stderr, "DEBUG: Found \"%s.%s.%s\"...\n", serviceName, regtype, replyDomain);
|
||||
#endif /* HAVE_DNSSD */
|
||||
|
||||
device = calloc(sizeof(cups_device_t), 1);
|
||||
device->name = strdup(serviceName);
|
||||
@@ -1329,5 +1316,5 @@ unquote(char *dst, /* I - Destination buffer */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: dnssd.c 11623 2014-02-19 20:18:10Z msweet $".
|
||||
* End of "$Id: dnssd.c 11971 2014-07-01 14:38:29Z msweet $".
|
||||
*/
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: ipp.c 11890 2014-05-22 13:59:21Z msweet $"
|
||||
* "$Id: ipp.c 11909 2014-06-09 18:58:16Z msweet $"
|
||||
*
|
||||
* IPP backend for CUPS.
|
||||
*
|
||||
@@ -528,8 +528,8 @@ main(int argc, /* I - Number of command-line args */
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
!_cups_strcasecmp(value, "yes") ||
|
||||
!_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "version"))
|
||||
{
|
||||
@@ -3709,5 +3709,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
|
||||
}
|
||||
|
||||
/*
|
||||
* End of "$Id: ipp.c 11890 2014-05-22 13:59:21Z msweet $".
|
||||
* End of "$Id: ipp.c 11909 2014-06-09 18:58:16Z msweet $".
|
||||
*/
|
||||
|
||||
+5
-5
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: lpd.c 10996 2013-05-29 11:51:34Z msweet $"
|
||||
* "$Id: lpd.c 12025 2014-07-15 13:00:17Z msweet $"
|
||||
*
|
||||
* Line Printer Daemon backend for CUPS.
|
||||
*
|
||||
@@ -393,8 +393,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
!_cups_strcasecmp(value, "yes") ||
|
||||
!_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "timeout"))
|
||||
{
|
||||
@@ -1276,7 +1276,7 @@ rresvport_af(int *port, /* IO - Port number to bind to */
|
||||
* Try binding the port to the socket; return if all is OK...
|
||||
*/
|
||||
|
||||
if (!bind(fd, (struct sockaddr *)&addr, sizeof(addr)))
|
||||
if (!bind(fd, (struct sockaddr *)&addr, httpAddrLength(&addr)))
|
||||
return (fd);
|
||||
|
||||
/*
|
||||
@@ -1331,5 +1331,5 @@ sigterm_handler(int sig) /* I - Signal */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: lpd.c 10996 2013-05-29 11:51:34Z msweet $".
|
||||
* End of "$Id: lpd.c 12025 2014-07-15 13:00:17Z msweet $".
|
||||
*/
|
||||
|
||||
+8
-8
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: network.c 3755 2012-03-30 05:59:14Z msweet $"
|
||||
* "$Id: network.c 11971 2014-07-01 14:38:29Z msweet $"
|
||||
*
|
||||
* Common backend network APIs for CUPS.
|
||||
*
|
||||
@@ -268,6 +268,12 @@ backendNetworkSideCB(
|
||||
datalen = 0;
|
||||
break;
|
||||
|
||||
case CUPS_SC_CMD_GET_CONNECTED :
|
||||
status = CUPS_SC_STATUS_OK;
|
||||
data[0] = device_fd != -1;
|
||||
datalen = 1;
|
||||
break;
|
||||
|
||||
case CUPS_SC_CMD_GET_DEVICE_ID :
|
||||
if (snmp_fd >= 0)
|
||||
{
|
||||
@@ -305,12 +311,6 @@ backendNetworkSideCB(
|
||||
break;
|
||||
}
|
||||
|
||||
case CUPS_SC_CMD_GET_CONNECTED :
|
||||
status = CUPS_SC_STATUS_OK;
|
||||
data[0] = device_fd != -1;
|
||||
datalen = 1;
|
||||
break;
|
||||
|
||||
default :
|
||||
status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
|
||||
datalen = 0;
|
||||
@@ -322,5 +322,5 @@ backendNetworkSideCB(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: network.c 3755 2012-03-30 05:59:14Z msweet $".
|
||||
* End of "$Id: network.c 11971 2014-07-01 14:38:29Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -212,3 +212,6 @@
|
||||
|
||||
# Lexmark E238 (<rdar://problem/14493054>)
|
||||
0x043d 0x00d7 no-reattach
|
||||
|
||||
# Lexmark E238 (STR #4448)
|
||||
0x043d 0x009a no-reattach
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: socket.c 10996 2013-05-29 11:51:34Z msweet $"
|
||||
* "$Id: socket.c 11909 2014-06-09 18:58:16Z msweet $"
|
||||
*
|
||||
* AppSocket backend for CUPS.
|
||||
*
|
||||
@@ -250,8 +250,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
!_cups_strcasecmp(value, "yes") ||
|
||||
!_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "contimeout"))
|
||||
{
|
||||
@@ -520,5 +520,5 @@ wait_bc(int device_fd, /* I - Socket */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: socket.c 10996 2013-05-29 11:51:34Z msweet $".
|
||||
* End of "$Id: socket.c 11909 2014-06-09 18:58:16Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -20,7 +20,7 @@ dnl Set the name of the config header file...
|
||||
AC_CONFIG_HEADER(config.h)
|
||||
|
||||
dnl Version number information...
|
||||
CUPS_VERSION=1.7.3
|
||||
CUPS_VERSION=1.7.5
|
||||
CUPS_REVISION=
|
||||
#if test -z "$CUPS_REVISION" -a -d .svn; then
|
||||
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
|
||||
@@ -230,7 +230,7 @@ AC_SUBST(LIBUSB)
|
||||
AC_SUBST(USBQUIRKS)
|
||||
|
||||
if test "x$PKGCONFIG" != x; then
|
||||
if test x$enable_libusb = xyes -o $uname != Darwin; then
|
||||
if test x$enable_libusb != xno -a $uname != Darwin; then
|
||||
AC_MSG_CHECKING(for libusb-1.0)
|
||||
if $PKGCONFIG --exists libusb-1.0; then
|
||||
AC_MSG_RESULT(yes)
|
||||
@@ -240,6 +240,9 @@ if test "x$PKGCONFIG" != x; then
|
||||
USBQUIRKS="\$(DATADIR)/usb"
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
if test x$enable_libusb = xyes; then
|
||||
AC_MSG_ERROR(libusb required for --enable-libusb.)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
elif test x$enable_libusb = xyes; then
|
||||
|
||||
externo
+5
-2
@@ -2517,7 +2517,7 @@ esac
|
||||
ac_config_headers="$ac_config_headers config.h"
|
||||
|
||||
|
||||
CUPS_VERSION=1.7.3
|
||||
CUPS_VERSION=1.7.5
|
||||
CUPS_REVISION=
|
||||
#if test -z "$CUPS_REVISION" -a -d .svn; then
|
||||
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
|
||||
@@ -5238,7 +5238,7 @@ USBQUIRKS=""
|
||||
|
||||
|
||||
if test "x$PKGCONFIG" != x; then
|
||||
if test x$enable_libusb = xyes -o $uname != Darwin; then
|
||||
if test x$enable_libusb != xno -a $uname != Darwin; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libusb-1.0" >&5
|
||||
$as_echo_n "checking for libusb-1.0... " >&6; }
|
||||
if $PKGCONFIG --exists libusb-1.0; then
|
||||
@@ -5252,6 +5252,9 @@ $as_echo "yes" >&6; }
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
if test x$enable_libusb = xyes; then
|
||||
as_fn_error $? "libusb required for --enable-libusb." "$LINENO" 5
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
elif test x$enable_libusb = xyes; then
|
||||
|
||||
+4
-8
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: cups.h 11812 2014-04-10 15:47:53Z msweet $"
|
||||
* "$Id: cups.h 12025 2014-07-15 13:00:17Z msweet $"
|
||||
*
|
||||
* API definitions for CUPS.
|
||||
*
|
||||
@@ -30,10 +30,6 @@
|
||||
typedef off_t ssize_t; /* @private@ */
|
||||
# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
|
||||
|
||||
# ifdef __BLOCKS__
|
||||
# include <dispatch/dispatch.h>
|
||||
# endif /* __BLOCKS__ */
|
||||
|
||||
# include "file.h"
|
||||
# include "ipp.h"
|
||||
# include "language.h"
|
||||
@@ -53,10 +49,10 @@ extern "C" {
|
||||
* Constants...
|
||||
*/
|
||||
|
||||
# define CUPS_VERSION 1.0703
|
||||
# define CUPS_VERSION 1.0705
|
||||
# define CUPS_VERSION_MAJOR 1
|
||||
# define CUPS_VERSION_MINOR 7
|
||||
# define CUPS_VERSION_PATCH 3
|
||||
# define CUPS_VERSION_PATCH 5
|
||||
|
||||
# define CUPS_BC_FD 3
|
||||
/* Back-channel file descriptor for
|
||||
@@ -627,5 +623,5 @@ extern const char *cupsUserAgent(void) _CUPS_API_1_7;
|
||||
#endif /* !_CUPS_CUPS_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id: cups.h 11812 2014-04-10 15:47:53Z msweet $".
|
||||
* End of "$Id: cups.h 12025 2014-07-15 13:00:17Z msweet $".
|
||||
*/
|
||||
|
||||
+20
-32
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: usersys.c 11689 2014-03-05 21:22:12Z msweet $"
|
||||
* "$Id: usersys.c 11909 2014-06-09 18:58:16Z msweet $"
|
||||
*
|
||||
* User, system, and password routines for CUPS.
|
||||
*
|
||||
* Copyright 2007-2013 by Apple Inc.
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -851,29 +851,7 @@ _cupsSetDefaults(void)
|
||||
cups_anyroot = getenv("CUPS_ANYROOT");
|
||||
cups_expiredroot = getenv("CUPS_EXPIREDROOT");
|
||||
cups_expiredcerts = getenv("CUPS_EXPIREDCERTS");
|
||||
|
||||
if ((cups_user = getenv("CUPS_USER")) == NULL)
|
||||
{
|
||||
#ifndef WIN32
|
||||
/*
|
||||
* Try the USER environment variable...
|
||||
*/
|
||||
|
||||
if ((cups_user = getenv("USER")) != NULL)
|
||||
{
|
||||
/*
|
||||
* Validate USER matches the current UID, otherwise don't allow it to
|
||||
* override things... This makes sure that printing after doing su or
|
||||
* sudo records the correct username.
|
||||
*/
|
||||
|
||||
struct passwd *pw; /* Account information */
|
||||
|
||||
if ((pw = getpwnam(cups_user)) == NULL || pw->pw_uid != getuid())
|
||||
cups_user = NULL;
|
||||
}
|
||||
#endif /* !WIN32 */
|
||||
}
|
||||
cups_user = getenv("CUPS_USER");
|
||||
|
||||
/*
|
||||
* Then, if needed, read the ~/.cups/client.conf or /etc/cups/client.conf
|
||||
@@ -1089,20 +1067,30 @@ cups_read_client_conf(
|
||||
if (!GetUserName(cg->user, &size))
|
||||
#else
|
||||
/*
|
||||
* Get the user name corresponding to the current UID...
|
||||
* Try the USER environment variable as the default username...
|
||||
*/
|
||||
|
||||
struct passwd *pwd; /* User/password entry */
|
||||
const char *envuser = getenv("USER");
|
||||
/* Default username */
|
||||
struct passwd *pw = NULL; /* Account information */
|
||||
|
||||
setpwent();
|
||||
if ((pwd = getpwuid(getuid())) != NULL)
|
||||
if (envuser)
|
||||
{
|
||||
/*
|
||||
* Found a match!
|
||||
* Validate USER matches the current UID, otherwise don't allow it to
|
||||
* override things... This makes sure that printing after doing su or
|
||||
* sudo records the correct username.
|
||||
*/
|
||||
|
||||
strlcpy(cg->user, pwd->pw_name, sizeof(cg->user));
|
||||
if ((pw = getpwnam(envuser)) != NULL && pw->pw_uid != getuid())
|
||||
pw = NULL;
|
||||
}
|
||||
|
||||
if (!pw)
|
||||
pw = getpwuid(getuid());
|
||||
|
||||
if (pw)
|
||||
strlcpy(cg->user, pw->pw_name, sizeof(cg->user));
|
||||
else
|
||||
#endif /* WIN32 */
|
||||
{
|
||||
@@ -1141,5 +1129,5 @@ cups_read_client_conf(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: usersys.c 11689 2014-03-05 21:22:12Z msweet $".
|
||||
* End of "$Id: usersys.c 11909 2014-06-09 18:58:16Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Novetats del CUPS 1.4</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Fòrum d'usuaris</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Fòrum d'usuaris</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Referència del cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Cerca de controladors d'impressora</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS per desenvolupadors</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">Referència del fitxer d'inf. del compilador del controlador per PPD</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Fòrum de desenvolupadors</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Fòrum de desenvolupadors</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Co je nového v CUPS 1.6</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Uživatelské fórum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Uživatelské fórum</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Konfigurační soubor cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Hedat ovladače tiskárny</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS pro vývojáře</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">PPD kompilátor Driver Information File Reference</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Vývojářské fórum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Vývojářské fórum</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Neues in CUPS 1.7</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Benutzerforum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Benutzerforum</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf Referenz</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Druckertreiber finden</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS für Entwickler</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">PPD Compiler Treiber Dateireferenz</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Entwicklerforum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Entwicklerforum</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Qué hay de nuevo en CUPS 1.6</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Foro de usuarios</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Foro de usuarios</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Referencia de cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Encontrar controladores de impresora</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS para desarrolladores</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">Referencia del archivo de información del compilador de controladores PPD</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Foro de desarrollo</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Foro de desarrollo</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Quoi de neuf dans CUPS 1.6</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum utilisateur</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Forum utilisateur</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Références sur cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Trouver des pilotes d'imprimantes</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS pour les développeurs</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">PPD Compiler Driver Information File Reference</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum développeurs</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Forum développeurs</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -227,6 +227,22 @@ milliseconds.
|
||||
<dd>Specifies the level of encryption that is required for a particular
|
||||
location.
|
||||
</dd>
|
||||
<dt>ErrorPolicy abort-job
|
||||
</dt>
|
||||
<dd>Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
|
||||
</dd>
|
||||
<dt>ErrorPolicy retry-job
|
||||
</dt>
|
||||
<dd>Specifies that a failed print job should be retried at a later time unless otherwise specified for the printer.
|
||||
</dd>
|
||||
<dt>ErrorPolicy retry-this-job
|
||||
</dt>
|
||||
<dd>Specifies that a failed print job should be retried immediately unless otherwise specified for the printer.
|
||||
</dd>
|
||||
<dt>ErrorPolicy stop-printer
|
||||
</dt>
|
||||
<dd>Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default.
|
||||
</dd>
|
||||
<dt>FilterLimit limit
|
||||
</dt>
|
||||
<dd></dd>
|
||||
|
||||
+2
-4
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">What's New in CUPS 1.7</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">User Forum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">User Forum</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf Reference</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Find Printer Drivers</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS for Developers</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">PPD Compiler Driver Information File Reference</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Developer Forum</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Developer Forum</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Le novità introdotte da CUPS 1.7</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum dell'utente</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Forum dell'utente</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Riferimenti a cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Trovare i driver delle stampanti</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS per gli sviluppatori</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">File di riferimento del compilatore di driver PPD</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum dello sviluppatore</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Forum dello sviluppatore</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -52,7 +52,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">CUPS 1.6 の新機能</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">ユーザーフォーラム</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">ユーザーフォーラム</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -72,8 +72,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf リファレンス</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">プリンタードライバーの検索</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>開発者向け</H2>
|
||||
@@ -92,7 +90,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">PPD コンパイラー用ドライバー情報ファイル リファレンス</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">開発者フォーラム</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">開発者フォーラム</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -50,7 +50,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/whatsnew.html">Что нового в CUPS 1.6</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Форум пользователей</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups">Форум пользователей</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
|
||||
|
||||
@@ -70,8 +70,6 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-cupsd-conf.html">Справочник по cupsd.conf</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/ppd.php">Поиск драйверов принтера</A></P>
|
||||
|
||||
</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
|
||||
|
||||
<H2>CUPS для разработчиков</H2>
|
||||
@@ -90,7 +88,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
|
||||
|
||||
<P><A HREF="help/ref-ppdcfile.html">Справочник по компилятору PPD</A></P>
|
||||
|
||||
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Форум разработчиков</A></P>
|
||||
<P><A HREF="http://www.cups.org/lists.php?LIST=cups-devel">Форум разработчиков</A></P>
|
||||
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
|
||||
@@ -14,17 +14,17 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: CUPS 1.7.2\n"
|
||||
"Project-Id-Version: CUPS 1.7.4\n"
|
||||
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
|
||||
"POT-Creation-Date: 2014-05-09 13:32-0700\n"
|
||||
"PO-Revision-Date: 2014-04-30 23:57-0300\n"
|
||||
"PO-Revision-Date: 2014-07-22 00:19-0300\n"
|
||||
"Last-Translator: Rafael Ferreira <rafael.f.f1@gmail.com>\n"
|
||||
"Language-Team: Brazilian Portuguese <traducao-cups-pt-br@googlegroups.com>\n"
|
||||
"Language: pt_BR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 1.6.4\n"
|
||||
"X-Generator: Poedit 1.6.5\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
msgid "\t\t(all)"
|
||||
@@ -3742,7 +3742,7 @@ msgid "No active connection"
|
||||
msgstr "Nenhuma conexão ativa"
|
||||
|
||||
msgid "No active connection."
|
||||
msgstr ""
|
||||
msgstr "Nenhuma conexão ativa."
|
||||
|
||||
#, c-format
|
||||
msgid "No active jobs on %s."
|
||||
@@ -3799,7 +3799,7 @@ msgid "No printer-uri in request."
|
||||
msgstr "Nenhum printer-uri na requisição."
|
||||
|
||||
msgid "No request sent."
|
||||
msgstr ""
|
||||
msgstr "Nenhuma requisição enviada."
|
||||
|
||||
msgid "No request-id"
|
||||
msgstr "Nenhum request-id"
|
||||
|
||||
+15
-3
@@ -1,5 +1,5 @@
|
||||
.\"
|
||||
.\" "$Id: cupsd.conf.man.in 11109 2013-07-08 21:15:13Z msweet $"
|
||||
.\" "$Id: cupsd.conf.man.in 12060 2014-07-28 14:04:41Z msweet $"
|
||||
.\"
|
||||
.\" cupsd.conf man page for CUPS.
|
||||
.\"
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" 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/".
|
||||
.\"
|
||||
.TH cupsd.conf 5 "CUPS" "8 July 2013" "Apple Inc."
|
||||
.TH cupsd.conf 5 "CUPS" "28 July 2014" "Apple Inc."
|
||||
.SH NAME
|
||||
cupsd.conf \- server configuration file for cups
|
||||
.SH DESCRIPTION
|
||||
@@ -180,6 +180,18 @@ Encryption Required
|
||||
Specifies the level of encryption that is required for a particular
|
||||
location.
|
||||
.TP 5
|
||||
ErrorPolicy abort-job
|
||||
Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
|
||||
.TP 5
|
||||
ErrorPolicy retry-job
|
||||
Specifies that a failed print job should be retried at a later time unless otherwise specified for the printer.
|
||||
.TP 5
|
||||
ErrorPolicy retry-this-job
|
||||
Specifies that a failed print job should be retried immediately unless otherwise specified for the printer.
|
||||
.TP 5
|
||||
ErrorPolicy stop-printer
|
||||
Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default.
|
||||
.TP 5
|
||||
FilterLimit limit
|
||||
.br
|
||||
Specifies the maximum cost of filters that are run concurrently.
|
||||
@@ -521,5 +533,5 @@ http://localhost:631/help
|
||||
.SH COPYRIGHT
|
||||
Copyright 2007-2013 by Apple Inc.
|
||||
.\"
|
||||
.\" End of "$Id: cupsd.conf.man.in 11109 2013-07-08 21:15:13Z msweet $".
|
||||
.\" End of "$Id: cupsd.conf.man.in 12060 2014-07-28 14:04:41Z msweet $".
|
||||
.\"
|
||||
|
||||
+13
-4
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id: cups.spec.in 11897 2014-05-27 15:02:42Z msweet $"
|
||||
# "$Id: cups.spec.in 11946 2014-06-24 18:01:58Z msweet $"
|
||||
#
|
||||
# RPM "spec" file for CUPS.
|
||||
#
|
||||
@@ -21,6 +21,11 @@
|
||||
# dnssd - Enable/disable DNS-SD support (default = enable)
|
||||
# libusb1 - Enable/disable LIBUSB 1.0 support (default = enable)
|
||||
# static - Enable/disable static libraries (default = enable)
|
||||
#
|
||||
# Note: Older Linux distributions use the name "libusbx-devel" or just
|
||||
# "libusb-devel" for LIBUSB 1.0. There is absolutely nothing we can
|
||||
# do to make this spec file build as-is on those distributions, you'll
|
||||
# need to change the "BuildRequires" line accordingly...
|
||||
|
||||
%{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}}
|
||||
%{?_with_dbus: %define _dbus --enable-dbus}
|
||||
@@ -40,12 +45,12 @@
|
||||
|
||||
Summary: CUPS
|
||||
Name: cups
|
||||
Version: 1.7.3
|
||||
Version: 1.7.5
|
||||
Release: 1
|
||||
Epoch: 1
|
||||
License: GPL
|
||||
Group: System Environment/Daemons
|
||||
Source: http://www.cups.org/software/1.7.3/cups-1.7.3-source.tar.bz2
|
||||
Source: http://www.cups.org/software/1.7.5/cups-1.7.5-source.tar.bz2
|
||||
Url: http://www.cups.org
|
||||
Packager: Anonymous <anonymous@foo.com>
|
||||
Vendor: Apple Inc.
|
||||
@@ -283,6 +288,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/share/doc/cups/it/*
|
||||
%dir /usr/share/doc/cups/ja
|
||||
/usr/share/doc/cups/ja/*
|
||||
%dir /usr/share/doc/cups/pt_BR
|
||||
/usr/share/doc/cups/pt_BR/*
|
||||
%dir /usr/share/doc/cups/ru
|
||||
/usr/share/doc/cups/ru/*
|
||||
|
||||
@@ -300,6 +307,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/share/locale/it/cups_it.po
|
||||
%dir /usr/share/locale/ja
|
||||
/usr/share/locale/ja/cups_ja.po
|
||||
%dir /usr/share/locale/pt_BR
|
||||
/usr/share/locale/pt_BR/cups_pt_BR.po
|
||||
%dir /usr/share/locale/ru
|
||||
/usr/share/locale/ru/cups_ru.po
|
||||
|
||||
@@ -396,5 +405,5 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id: cups.spec.in 11897 2014-05-27 15:02:42Z msweet $".
|
||||
# End of "$Id: cups.spec.in 11946 2014-06-24 18:01:58Z msweet $".
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id: cups.spec.in 11897 2014-05-27 15:02:42Z msweet $"
|
||||
# "$Id: cups.spec.in 11946 2014-06-24 18:01:58Z msweet $"
|
||||
#
|
||||
# RPM "spec" file for CUPS.
|
||||
#
|
||||
@@ -21,6 +21,11 @@
|
||||
# dnssd - Enable/disable DNS-SD support (default = enable)
|
||||
# libusb1 - Enable/disable LIBUSB 1.0 support (default = enable)
|
||||
# static - Enable/disable static libraries (default = enable)
|
||||
#
|
||||
# Note: Older Linux distributions use the name "libusbx-devel" or just
|
||||
# "libusb-devel" for LIBUSB 1.0. There is absolutely nothing we can
|
||||
# do to make this spec file build as-is on those distributions, you'll
|
||||
# need to change the "BuildRequires" line accordingly...
|
||||
|
||||
%{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}}
|
||||
%{?_with_dbus: %define _dbus --enable-dbus}
|
||||
@@ -283,6 +288,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/share/doc/cups/it/*
|
||||
%dir /usr/share/doc/cups/ja
|
||||
/usr/share/doc/cups/ja/*
|
||||
%dir /usr/share/doc/cups/pt_BR
|
||||
/usr/share/doc/cups/pt_BR/*
|
||||
%dir /usr/share/doc/cups/ru
|
||||
/usr/share/doc/cups/ru/*
|
||||
|
||||
@@ -300,6 +307,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/share/locale/it/cups_it.po
|
||||
%dir /usr/share/locale/ja
|
||||
/usr/share/locale/ja/cups_ja.po
|
||||
%dir /usr/share/locale/pt_BR
|
||||
/usr/share/locale/pt_BR/cups_pt_BR.po
|
||||
%dir /usr/share/locale/ru
|
||||
/usr/share/locale/ru/cups_ru.po
|
||||
|
||||
@@ -396,5 +405,5 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id: cups.spec.in 11897 2014-05-27 15:02:42Z msweet $".
|
||||
# End of "$Id: cups.spec.in 11946 2014-06-24 18:01:58Z msweet $".
|
||||
#
|
||||
|
||||
+60
-19
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: client.c 11642 2014-02-27 15:57:59Z msweet $"
|
||||
* "$Id: client.c 12057 2014-07-22 14:03:19Z msweet $"
|
||||
*
|
||||
* Client routines for the CUPS scheduler.
|
||||
*
|
||||
@@ -2143,6 +2143,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
|
||||
* Grab any request data from the connection...
|
||||
*/
|
||||
|
||||
if (!httpWait(HTTP(con), 0))
|
||||
return;
|
||||
|
||||
if ((ipp_state = ippRead(&(con->http), con->request)) == IPP_ERROR)
|
||||
{
|
||||
cupsdLogMessage(CUPSD_LOG_ERROR,
|
||||
@@ -2210,7 +2213,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
|
||||
{
|
||||
if (!httpWait(HTTP(con), 0))
|
||||
return;
|
||||
else if ((bytes = httpRead2(HTTP(con), line, sizeof(line))) < 0)
|
||||
|
||||
if ((bytes = httpRead2(HTTP(con), line, sizeof(line))) < 0)
|
||||
{
|
||||
if (con->http.error && con->http.error != EPIPE)
|
||||
cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||
@@ -3306,7 +3310,7 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
* then fallback to the default one...
|
||||
*/
|
||||
|
||||
if ((status = stat(filename, filestats)) != 0 && language[0] &&
|
||||
if ((status = lstat(filename, filestats)) != 0 && language[0] &&
|
||||
strncmp(con->uri, "/icons/", 7) &&
|
||||
strncmp(con->uri, "/ppd/", 5) &&
|
||||
strncmp(con->uri, "/rss/", 5) &&
|
||||
@@ -3323,7 +3327,7 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
if ((ptr = strchr(filename, '?')) != NULL)
|
||||
*ptr = '\0';
|
||||
|
||||
if ((status = stat(filename, filestats)) != 0)
|
||||
if ((status = lstat(filename, filestats)) != 0)
|
||||
{
|
||||
/*
|
||||
* Drop the language prefix and try the root directory...
|
||||
@@ -3335,12 +3339,33 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
if ((ptr = strchr(filename, '?')) != NULL)
|
||||
*ptr = '\0';
|
||||
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* If we're found a directory, get the index.html file instead...
|
||||
* If we've found a symlink, 404 the sucker to avoid disclosing information.
|
||||
*/
|
||||
|
||||
if (!status && S_ISLNK(filestats->st_mode))
|
||||
{
|
||||
cupsdLogMessage(CUPSD_LOG_INFO, "[Client %d] Symlinks such as \"%s\" are not allowed.", con->http.fd, filename);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* Similarly, if the file/directory does not have world read permissions, do
|
||||
* not allow access...
|
||||
*/
|
||||
|
||||
if (!status && !(filestats->st_mode & S_IROTH))
|
||||
{
|
||||
cupsdLogMessage(CUPSD_LOG_INFO, "[Client %d] Files/directories such as \"%s\" must be world-readable.", con->http.fd, filename);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* If we've found a directory, get the index.html file instead...
|
||||
*/
|
||||
|
||||
if (!status && S_ISDIR(filestats->st_mode))
|
||||
@@ -3383,13 +3408,13 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
plen = len - (ptr - filename);
|
||||
|
||||
strlcpy(ptr, "index.html", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
|
||||
#ifdef HAVE_JAVA
|
||||
if (status)
|
||||
{
|
||||
strlcpy(ptr, "index.class", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
#endif /* HAVE_JAVA */
|
||||
|
||||
@@ -3397,7 +3422,7 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
if (status)
|
||||
{
|
||||
strlcpy(ptr, "index.pl", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
#endif /* HAVE_PERL */
|
||||
|
||||
@@ -3405,7 +3430,7 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
if (status)
|
||||
{
|
||||
strlcpy(ptr, "index.php", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
#endif /* HAVE_PHP */
|
||||
|
||||
@@ -3413,18 +3438,39 @@ get_file(cupsd_client_t *con, /* I - Client connection */
|
||||
if (status)
|
||||
{
|
||||
strlcpy(ptr, "index.pyc", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
|
||||
if (status)
|
||||
{
|
||||
strlcpy(ptr, "index.py", plen);
|
||||
status = stat(filename, filestats);
|
||||
status = lstat(filename, filestats);
|
||||
}
|
||||
#endif /* HAVE_PYTHON */
|
||||
|
||||
}
|
||||
while (status && language[0]);
|
||||
|
||||
/*
|
||||
* If we've found a symlink, 404 the sucker to avoid disclosing information.
|
||||
*/
|
||||
|
||||
if (!status && S_ISLNK(filestats->st_mode))
|
||||
{
|
||||
cupsdLogMessage(CUPSD_LOG_INFO, "[Client %d] Symlinks such as \"%s\" are not allowed.", con->http.fd, filename);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* Similarly, if the file/directory does not have world read permissions, do
|
||||
* not allow access...
|
||||
*/
|
||||
|
||||
if (!status && !(filestats->st_mode & S_IROTH))
|
||||
{
|
||||
cupsdLogMessage(CUPSD_LOG_INFO, "[Client %d] Files/directories such as \"%s\" must be world-readable.", con->http.fd, filename);
|
||||
return (NULL);
|
||||
}
|
||||
}
|
||||
|
||||
cupsdLogMessage(CUPSD_LOG_DEBUG2,
|
||||
@@ -3787,12 +3833,7 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
|
||||
argv[0] = command;
|
||||
|
||||
if (options)
|
||||
{
|
||||
commptr = options;
|
||||
if (*commptr == ' ')
|
||||
commptr ++;
|
||||
strlcpy(argbuf, commptr, sizeof(argbuf));
|
||||
}
|
||||
strlcpy(argbuf, options, sizeof(argbuf));
|
||||
else
|
||||
argbuf[0] = '\0';
|
||||
|
||||
@@ -4370,5 +4411,5 @@ write_pipe(cupsd_client_t *con) /* I - Client connection */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: client.c 11642 2014-02-27 15:57:59Z msweet $".
|
||||
* End of "$Id: client.c 12057 2014-07-22 14:03:19Z msweet $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: conf.c 11488 2013-12-22 05:04:41Z msweet $"
|
||||
* "$Id: conf.c 11932 2014-06-16 16:13:06Z msweet $"
|
||||
*
|
||||
* Configuration routines for the CUPS scheduler.
|
||||
*
|
||||
@@ -104,7 +104,7 @@ static const cupsd_var_t cupsd_vars[] =
|
||||
{ "MaxJobs", &MaxJobs, CUPSD_VARTYPE_INTEGER },
|
||||
{ "MaxJobsPerPrinter", &MaxJobsPerPrinter, CUPSD_VARTYPE_INTEGER },
|
||||
{ "MaxJobsPerUser", &MaxJobsPerUser, CUPSD_VARTYPE_INTEGER },
|
||||
{ "MaxJobTime", &MaxJobTime, CUPSD_VARTYPE_INTEGER },
|
||||
{ "MaxJobTime", &MaxJobTime, CUPSD_VARTYPE_TIME },
|
||||
{ "MaxLeaseDuration", &MaxLeaseDuration, CUPSD_VARTYPE_TIME },
|
||||
{ "MaxLogSize", &MaxLogSize, CUPSD_VARTYPE_INTEGER },
|
||||
{ "MaxRequestSize", &MaxRequestSize, CUPSD_VARTYPE_INTEGER },
|
||||
@@ -4063,5 +4063,5 @@ set_policy_defaults(cupsd_policy_t *pol)/* I - Policy */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: conf.c 11488 2013-12-22 05:04:41Z msweet $".
|
||||
* End of "$Id: conf.c 11932 2014-06-16 16:13:06Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: dirsvc.c 11688 2014-03-05 21:11:32Z msweet $"
|
||||
* "$Id: dirsvc.c 11906 2014-06-09 18:33:24Z msweet $"
|
||||
*
|
||||
* Directory services routines for the CUPS scheduler.
|
||||
*
|
||||
@@ -237,11 +237,13 @@ cupsdStartBrowsing(void)
|
||||
if (BrowseLocalProtocols & BROWSE_SMB)
|
||||
update_smb(1);
|
||||
|
||||
#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
|
||||
/*
|
||||
* Register the individual printers
|
||||
*/
|
||||
|
||||
dnssdRegisterAllPrinters(0);
|
||||
#endif /* HAVE_DNSSD || HAVE_AVAHI */
|
||||
}
|
||||
|
||||
|
||||
@@ -255,6 +257,7 @@ cupsdStopBrowsing(void)
|
||||
if (!Browsing || !BrowseLocalProtocols)
|
||||
return;
|
||||
|
||||
#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
|
||||
/*
|
||||
* De-register the individual printers
|
||||
*/
|
||||
@@ -265,7 +268,6 @@ cupsdStopBrowsing(void)
|
||||
* Shut down browsing sockets...
|
||||
*/
|
||||
|
||||
#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
|
||||
if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster)
|
||||
dnssdStop();
|
||||
#endif /* HAVE_DNSSD || HAVE_AVAHI */
|
||||
@@ -1548,7 +1550,7 @@ get_auth_info_required(
|
||||
if (i)
|
||||
*bufptr++ = ',';
|
||||
|
||||
strlcpy(bufptr, p->auth_info_required[i], bufsize - (bufptr - buffer));
|
||||
strlcpy(bufptr, p->auth_info_required[i], bufsize - (size_t)(bufptr - buffer));
|
||||
bufptr += strlen(bufptr);
|
||||
}
|
||||
|
||||
@@ -1814,5 +1816,5 @@ update_smb(int onoff) /* I - 1 = turn on, 0 = turn off */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: dirsvc.c 11688 2014-03-05 21:11:32Z msweet $".
|
||||
* End of "$Id: dirsvc.c 11906 2014-06-09 18:33:24Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Mou totes les tasques</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Cancel·la totes les tasques</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Configura com a servidor per defecte</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Configura els permisos dels usuaris</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Přesun všech úloh</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Výmaz všech úloh</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Nastavení jako výchozí na serveru</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Nastavení přístupu uživatelů</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Alle Aufträge verschieben</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Alle Aufträge abbrechen</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Als Standard festlegen</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Erlaubte Benutzer festlegen</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Mover todos los trabajos</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Cancelar todos los trabajos</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Poner como predeterminada del servidor</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Establecer usuarios permitidos</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Transférer toutes les tâches</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Purger toutes les tâches</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Définir par défaut</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Définir les autorisations</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Sposta tutte le stampe</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Elimina tutte le stampe</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Imposta come predefinita</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Imposta gli utenti autorizzati</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">すべてのジョブの移動</OPTION>
|
||||
<OPTION VALUE="purge-jobs">すべてのジョブをキャンセル</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="進む"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">サーバーのデフォルトの設定</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">許可するユーザーの設定</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="進む" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="進む"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Move All Jobs</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Cancel All Jobs</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Set As Server Default</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Set Allowed Users</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Mover todos trabalhos</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Cancelar todos trabalhos</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Ir" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Ir"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Definir com padrão do servidor</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Definir usuários permitidos</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Ir" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Ir"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<OPTION VALUE="move-jobs">Переместить все задания</OPTION>
|
||||
<OPTION VALUE="purge-jobs">Закрыть все задания</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
|
||||
@@ -31,7 +31,7 @@
|
||||
<OPTION VALUE="set-as-default">Установить как принтер по умолчанию</OPTION>
|
||||
<OPTION VALUE="set-allowed-users">Список разрешенных пользователей</OPTION>
|
||||
</SELECT>
|
||||
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
|
||||
<NOSCRIPT><INPUT TYPE="SUBMIT" VALUE="Go"></NOSCRIPT>
|
||||
</FORM>
|
||||
|
||||
<TABLE SUMMARY="{printer_name}">
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário