Blame cups-direct-usb.patch
|
|
8a08612 |
--- cups-1.2.8/backend/usb-unix.c.direct-usb 2007-02-05 20:25:50.000000000 +0000
|
|
|
8a08612 |
+++ cups-1.2.8/backend/usb-unix.c 2007-02-14 17:44:40.000000000 +0000
|
|
|
8a08612 |
@@ -87,6 +87,8 @@
|
|
|
8a08612 |
use_bc = strcasecmp(hostname, "Canon") &&
|
|
|
8a08612 |
strcasecmp(hostname, "Konica Minolta") &&
|
|
|
8a08612 |
strcasecmp(hostname, "Minolta");
|
|
|
b32a2ee |
+ if (use_bc && !strncmp(uri, "usb:/dev/", 9))
|
|
|
b32a2ee |
+ use_bc = 0;
|
|
|
b32a2ee |
|
|
|
b32a2ee |
if ((device_fd = open_device(uri, &use_bc)) == -1)
|
|
|
b32a2ee |
{
|
|
|
8a08612 |
@@ -304,12 +306,7 @@
|
|
|
23fc700 |
if (!strncmp(uri, "usb:/dev/", 9))
|
|
|
23fc700 |
#ifdef __linux
|
|
|
c617a1d |
{
|
|
|
c617a1d |
- /*
|
|
|
c617a1d |
- * Do not allow direct devices anymore...
|
|
|
c617a1d |
- */
|
|
|
c617a1d |
-
|
|
|
c617a1d |
- errno = ENODEV;
|
|
|
c617a1d |
- return (-1);
|
|
|
23fc700 |
+ return (open(uri + 4, O_RDWR | O_EXCL));
|
|
|
c617a1d |
}
|
|
|
23fc700 |
else if (!strncmp(uri, "usb://", 6))
|
|
|
23fc700 |
{
|