]> git.pld-linux.org Git - packages/cups.git/blobdiff - cups-bug-5289.patch
- up to 2.2.8
[packages/cups.git] / cups-bug-5289.patch
diff --git a/cups-bug-5289.patch b/cups-bug-5289.patch
deleted file mode 100644 (file)
index 8324229..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-From bb10adda6f2f41448d809c3fe86175b5b69cba7b Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 16 Apr 2018 19:19:13 -0400
-Subject: [PATCH] Try again to mirror fix (Issue #5289)
-
----
- scheduler/client.c | 14 +++++++++++++-
- scheduler/client.h |  1 +
- 2 files changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/scheduler/client.c b/scheduler/client.c
-index f68924aa1..1c4760bfd 100644
---- a/scheduler/client.c
-+++ b/scheduler/client.c
-@@ -818,6 +818,18 @@ cupsdReadClient(cupsd_client_t *con)      /* I - Client to read from */
-   if (status == HTTP_STATUS_OK)
-   {
-+   /*
-+    * Record whether the client is a web browser.  "Mozilla" was the original
-+    * and it seems that every web browser in existence now uses that as the
-+    * prefix with additional information identifying *which* browser.
-+    *
-+    * Chrome (at least) has problems with multiple WWW-Authenticate values in
-+    * a single header, so we only report Basic or Negotiate to web browsers and
-+    * leave the multiple choices to the native CUPS client...
-+    */
-+
-+    con->is_browser = !strncmp(httpGetField(con->http, HTTP_FIELD_USER_AGENT), "Mozilla/", 8);
-+
-     if (httpGetField(con->http, HTTP_FIELD_ACCEPT_LANGUAGE)[0])
-     {
-      /*
-@@ -2361,7 +2373,7 @@ cupsdSendHeader(
-       strlcpy(auth_str, "Negotiate", sizeof(auth_str));
-     }
--    if (con->best && auth_type != CUPSD_AUTH_NEGOTIATE &&
-+    if (con->best && auth_type != CUPSD_AUTH_NEGOTIATE && !con->is_browser &&
-         !_cups_strcasecmp(httpGetHostname(con->http, NULL, 0), "localhost"))
-     {
-      /*
-diff --git a/scheduler/client.h b/scheduler/client.h
-index 7705f2c59..beddab0cc 100644
---- a/scheduler/client.h
-+++ b/scheduler/client.h
-@@ -30,6 +30,7 @@ struct cupsd_client_s
-   struct timeval      start;          /* Request start time */
-   http_state_t                operation;      /* Request operation */
-   off_t                       bytes;          /* Bytes transferred for this request */
-+  int                 is_browser;     /* Is the client a web browser? */
-   int                 type;           /* AuthType for username */
-   char                        username[HTTP_MAX_VALUE],
-                                       /* Username from Authorization: line */
This page took 0.100021 seconds and 4 git commands to generate.