- Authenticated printing did not always work when printing directly to a
remote server (STR #3435).
This commit is contained in:
parent
f27c87695c
commit
da2c254fc9
45
cups-str3435.patch
Normal file
45
cups-str3435.patch
Normal file
@ -0,0 +1,45 @@
|
||||
diff -up cups-1.4.2/cups/util.c.str3435 cups-1.4.2/cups/util.c
|
||||
--- cups-1.4.2/cups/util.c.str3435 2009-06-22 21:44:34.000000000 +0100
|
||||
+++ cups-1.4.2/cups/util.c 2009-12-08 12:11:38.647375446 +0000
|
||||
@@ -1511,12 +1511,36 @@ cupsPrintFiles2(
|
||||
return (0);
|
||||
}
|
||||
|
||||
- status = cupsStartDocument(http, name, job_id, docname, format,
|
||||
- i == (num_files - 1));
|
||||
+ do
|
||||
+ {
|
||||
+ cupsFileRewind(fp);
|
||||
+
|
||||
+ status = cupsStartDocument(http, name, job_id, docname, format,
|
||||
+ i == (num_files - 1));
|
||||
+
|
||||
+ while (status == HTTP_CONTINUE &&
|
||||
+ (bytes = cupsFileRead(fp, buffer, sizeof(buffer))) > 0)
|
||||
+ status = cupsWriteRequestData(http, buffer, bytes);
|
||||
+
|
||||
+ if (status == HTTP_UNAUTHORIZED)
|
||||
+ {
|
||||
+ char resource[1024]; /* Printer resource */
|
||||
|
||||
- while (status == HTTP_CONTINUE &&
|
||||
- (bytes = cupsFileRead(fp, buffer, sizeof(buffer))) > 0)
|
||||
- status = cupsWriteRequestData(http, buffer, bytes);
|
||||
+ snprintf(resource, sizeof(resource), "/printers/%s", name);
|
||||
+
|
||||
+ if (!cupsDoAuthentication(http, "POST", resource))
|
||||
+ {
|
||||
+ if (httpReconnect(http))
|
||||
+ {
|
||||
+ _cupsSetError(IPP_SERVICE_UNAVAILABLE, NULL, 0);
|
||||
+ return (0);
|
||||
+ }
|
||||
+ }
|
||||
+ else
|
||||
+ status = HTTP_AUTHORIZATION_CANCELED;
|
||||
+ }
|
||||
+ }
|
||||
+ while (status == HTTP_UNAUTHORIZED);
|
||||
|
||||
cupsFileClose(fp);
|
||||
|
@ -65,6 +65,7 @@ Patch40: cups-str3442.patch
|
||||
Patch41: cups-negative-snmp-string-length.patch
|
||||
Patch42: cups-sidechannel-intrs.patch
|
||||
Patch43: cups-media-empty-warning.patch
|
||||
Patch44: cups-str3435.patch
|
||||
|
||||
Patch100: cups-lspp.patch
|
||||
|
||||
@ -237,6 +238,7 @@ module.
|
||||
%patch41 -p1 -b .negative-snmp-string-length
|
||||
%patch42 -p1 -b .sidechannel-intrs
|
||||
%patch43 -p1 -b .media-empty-warning
|
||||
%patch44 -p1 -b .str3435
|
||||
|
||||
%if %lspp
|
||||
%patch100 -p1 -b .lspp
|
||||
@ -528,6 +530,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%changelog
|
||||
* Tue Dec 8 2009 Tim Waugh <twaugh@redhat.com> - 1:1.4.2-14
|
||||
- Authenticated printing did not always work when printing directly to
|
||||
a remote server (STR #3435).
|
||||
- Use upstream patch to stop the network backends incorrectly clearing
|
||||
the media-empty-warning state (rev 8896).
|
||||
- Use upstream patch to fix interrupt handling in the side-channel
|
||||
|
Loading…
Reference in New Issue
Block a user