aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTijl Coosemans <tijl@FreeBSD.org>2019-12-13 15:16:07 +0000
committerTijl Coosemans <tijl@FreeBSD.org>2019-12-13 15:16:07 +0000
commit8e43e2536eaa8204cdc5f022764fcbc77bda9036 (patch)
tree7e99be97042cdcaf3bdb9b1d990577f69931b57c
parentdfb06ab1f8b330f315ffae08b44c21d16687e73b (diff)
downloadports-8e43e2536eaa8204cdc5f022764fcbc77bda9036.tar.gz
ports-8e43e2536eaa8204cdc5f022764fcbc77bda9036.zip
MFH: r520041
Add a patch to let the implicitclass backend run the ipp backend. This fixes printer queues for remote printers detected by cups-browsed. PR: 242615 Submitted by: J.R. Oldroyd <fbsd@opal.com> Approved by: ports-secteam (blanket)
Notes
Notes: svn path=/branches/2019Q4/; revision=520043
-rw-r--r--print/cups-filters/Makefile1
-rw-r--r--print/cups-filters/files/patch-backend-implicitclass.c29
2 files changed, 30 insertions, 0 deletions
diff --git a/print/cups-filters/Makefile b/print/cups-filters/Makefile
index d608a02617d3..099d612aa9d5 100644
--- a/print/cups-filters/Makefile
+++ b/print/cups-filters/Makefile
@@ -2,6 +2,7 @@
PORTNAME= cups-filters
PORTVERSION= 1.25.6
+PORTREVISION= 1
CATEGORIES= print
MASTER_SITES= https://www.openprinting.org/download/cups-filters/
diff --git a/print/cups-filters/files/patch-backend-implicitclass.c b/print/cups-filters/files/patch-backend-implicitclass.c
new file mode 100644
index 000000000000..25e90f3e9c1b
--- /dev/null
+++ b/print/cups-filters/files/patch-backend-implicitclass.c
@@ -0,0 +1,29 @@
+--- backend/implicitclass.c.orig 2019-11-29 20:18:29 UTC
++++ backend/implicitclass.c
+@@ -98,7 +98,7 @@ main(int argc, /* I - Number of command-line args
+ ipp_attribute_t *attr;
+ int bytes; /* Bytes copied */
+ char uri[HTTP_MAX_URI];
+- char *argv_nt[7];
++ char *argv_nt[8];
+ int outbuflen,filefd,exit_status,dup_status;
+ static const char *pattrs[] =
+ {
+@@ -350,6 +350,7 @@ main(int argc, /* I - Number of command-line args
+ /* We will send the filtered output of the pdftoippprinter.c to
+ the IPP Backend*/
+ argv_nt[6] = tempfile_filter;
++ argv_nt[7] = NULL;
+ fprintf(stderr, "DEBUG: The filtered output of pdftoippprinter is written to file %s\n",
+ tempfile_filter);
+
+@@ -383,7 +384,8 @@ main(int argc, /* I - Number of command-line args
+ pid_t pid = fork();
+ if ( pid == 0 ) {
+ fprintf(stderr, "DEBUG: Started IPP Backend with pid: %d\n",getpid());
+- execv("/usr/lib/cups/backend/ipp",argv_nt);
++ execv(CUPS_SERVERBIN "/backend/ipp",argv_nt);
++ exit(CUPS_BACKEND_FAILED);
+ } else {
+ int status;
+ waitpid(pid, &status, 0);