{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":105824994,"defaultBranch":"master","name":"cups-filters","ownerLogin":"OpenPrinting","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-10-04T22:22:59.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/20563597?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1695399179.0","currentOid":""},"activityList":{"items":[{"before":"f0bd8ce7d8410908e0665bf61046f13c45b2d6d4","after":"196a892c20d992317cf8bb8c2733808e1d381bb3","ref":"refs/heads/master","pushedAt":"2024-03-08T12:02:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"configure: Fix broken bashism resulting in logic failure (#567)\n\nAfter carefully using configure checks designed to work on pre-unix wars\r\nbourne shells -- that is, the `test \"$var\" = \"\"` construct once upon a\r\ntime wasn't specified to treat \"\" as a distinct argument, and various\r\nbuggy implementations mishandled various forms where the first argument\r\nstarted with a dash, so the \"x\" padding provided a guaranteed comparison\r\n-- the configure.ac check then fails to run on any shells at all other\r\nthan GNU bash.\r\n\r\nBash provides the standard `test XXX = YYY` or `[ XXX = YYY ]`\r\nutilities. It also provides the ability to spell the equals sign as a\r\ndouble equals. This does nothing whatsoever -- it adds no new\r\nfunctionality to bash, it forbids nothing, it is *literally* an exact\r\nalias.\r\n\r\nIt should never be used under any circumstances. All developers must\r\nimmediately forget that it exists. Using it is non-portable and does not\r\nwork in /bin/sh scripts such as configure scripts, and it results in\r\ndangerous muscle memory when used in bash scripts because it makes\r\npeople unthinkingly use the double equals even in /bin/sh scripts. To\r\nadd insult to injury, it makes scripts take up more disk space (by a\r\nwhole byte! and sometimes even a few bytes...)\r\n\r\nDelete this accidental bashism, and restore the ability to get correct\r\n./configure behavior on systems where /bin/sh is something other than a\r\nsymlink to GNU bash.","shortMessageHtmlLink":"configure: Fix broken bashism resulting in logic failure (#567)"}},{"before":"2ddc72c47172b1b943fa9b228580d931edc9aa35","after":"f0bd8ce7d8410908e0665bf61046f13c45b2d6d4","ref":"refs/heads/master","pushedAt":"2024-03-08T11:50:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"configure.ac: Remove final traces of avahi (#558)\n\nThis was originally searched for cups-browsed, and during the great\r\nsplit these lookups accidentally got left in and moved around in the\r\nfile.\r\n\r\nThe original code began with this autoconf comment:\r\n```\r\ndnl Avahi for cups-browsed\r\n```\r\n\r\nAfter shifting down, it became:\r\n```\r\ndnl Avahi\r\n```\r\n\r\nAfter removing avahi from configure.ac, there are no remaining mentions\r\nof avahi anywhere other than CHANGES*.md","shortMessageHtmlLink":"configure.ac: Remove final traces of avahi (#558)"}},{"before":"e25fd59a7daed00b6a9f235bd5818116fca28e30","after":"0cce0968980e8fdd9053cba436a66246b2303a84","ref":"refs/heads/1.x","pushedAt":"2023-12-06T22:01:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"libcupsfilters: Fixed building with QPDF 11.x\n\nSet CXXFLAGS=\"-DPOINTERHOLDER_TRANSITION=0\" to silence QPDF warnings\n\nQPDF 11 issues warnings about deprecated \"PointerHolder\", even if the\ncode does not use \"PointerHolder\" any more. This compiler macro\nsuppresses the warnings.\n\nSee /usr/include/qpdf/PointerHolder.hh of QPDF 11.\n\nBackported from libcupsfilters (2.x), commit 076a994fce\n\nAdded \"-std=c++17\" C++ compiler flag (PR#18)\n\nNeeded as otherwise the QPDF.hh file of QPDF 11 causes the error\n\n ‘std::string_view’ has not been declared\n\nAdding the \"-std=c++17\" to CXXFLAGS fixes this. See also\n\n https://stackoverflow.com/questions/58295334/error-stdstring-view-has-no\nt-been-declared\n\nBackported from libcupsfilters (2.x), commit e1daf27c59","shortMessageHtmlLink":"libcupsfilters: Fixed building with QPDF 11.x"}},{"before":"d72184e725591f10e2b404b36fe3bf5bc304a299","after":"e25fd59a7daed00b6a9f235bd5818116fca28e30","ref":"refs/heads/1.x","pushedAt":"2023-12-06T19:01:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"cups-browsed: Fix memory leaks (missing \"free()\" calls)\n\nFixes #552\n\nThe reporter of the issue has run an analysing tool over the code of\ncups-browsed and found 3 memory leaks caused by missing `free()`\ncalls.","shortMessageHtmlLink":"cups-browsed: Fix memory leaks (missing \"free()\" calls)"}},{"before":"fffe781c4de655d458607c27dce9d202c4d7ae3d","after":"2ddc72c47172b1b943fa9b228580d931edc9aa35","ref":"refs/heads/master","pushedAt":"2023-09-22T16:12:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"cups-filters 2.0.0 Release","shortMessageHtmlLink":"cups-filters 2.0.0 Release"}},{"before":"fe184fdf86f7008bc5c811e037b55da519b1707d","after":"fffe781c4de655d458607c27dce9d202c4d7ae3d","ref":"refs/heads/master","pushedAt":"2023-09-21T17:52:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"Enable application/vnd.cups-postscript in conversion tables (#534)\n\nUnfortunately there are filters which produce this MIME type (such as\r\nhpps from hplip), and if someone uses such driver on client and server\r\nhas IPP Everywhere/driverless driver, job fails.\r\n\r\nThe patch (together with change in libcupsfilters, which will come later)\r\nfixes the issue.","shortMessageHtmlLink":"Enable application/vnd.cups-postscript in conversion tables (#534)"}},{"before":"93e60d3df358c0ae6f3dba79e1c9684657683d89","after":"d72184e725591f10e2b404b36fe3bf5bc304a299","ref":"refs/heads/1.x","pushedAt":"2023-07-03T21:26:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"Use description/location from server if available, otherwise from client\n\nWhen we create a local queue we first check whether we actually got\ndescription and location strings from the remote server/printer, if\nthey are empty we do not set empty strings but use the IPP attributes\nsaved locally for our local queue.\n\nThis way, if the server does not provide description/location and the\nuser sets their own, that one is conserved through reboots and daemon\nrestarts.\n\nThanks, Edgar Fuß, for the hint to make sure both server-provided and\nlocal-user-defined description/location work.","shortMessageHtmlLink":"Use description/location from server if available, otherwise from client"}},{"before":"8f274035756c04efeb77eb654e9d4c4447287d65","after":"fe184fdf86f7008bc5c811e037b55da519b1707d","ref":"refs/heads/master","pushedAt":"2023-06-20T20:06:33.364Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"cups-filters 2.0rc2 Release","shortMessageHtmlLink":"cups-filters 2.0rc2 Release"}},{"before":"a4809b89909c912998fee9bcfedc43aae5bbe505","after":"8f274035756c04efeb77eb654e9d4c4447287d65","ref":"refs/heads/master","pushedAt":"2023-05-17T09:12:38.402Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"Merge pull request from GHSA-gpxc-v2m8-fr3x\n\n* beh backend: Use execv() instead of system() - CVE-2023-24805\n\nWith execv() command line arguments are passed as separate strings and\nnot the full command line in a single string. This prevents arbitrary\ncommand execution by escaping the quoting of the arguments in a job\nwith forged job title.\n\n* beh backend: Extra checks against odd/forged input - CVE-2023-24805\n\n- Do not allow '/' in the scheme of the URI (= backend executable\n name), to assure that only backends inside /usr/lib/cups/backend/\n are used.\n\n- Pre-define scheme buffer to empty string, to be defined for case of\n uri being NULL.\n\n- URI must have ':', to split off scheme, otherwise error.\n\n- Check return value of snprintf() to create call path for backend, to\n error out on truncation of a too long scheme or on complete failure\n due to a completely odd scheme.\n\n* beh backend: Further improvements - CVE-2023-24805\n\n- Use strncat() instead of strncpy() for getting scheme from URI, the latter\n does not require setting terminating zero byte in case of truncation.\n\n- Also exclude \".\" or \"..\" as scheme, as directories are not valid CUPS\n backends.\n\n- Do not use fprintf() in sigterm_handler(), to not interfere with a\n fprintf() which could be running in the main process when\n sigterm_handler() is triggered.\n\n- Use \"static volatile int\" for global variable job_canceled.","shortMessageHtmlLink":"Merge pull request from GHSA-gpxc-v2m8-fr3x"}},{"before":"9799398713b941557642d0b2bdbef360837ece0c","after":"93e60d3df358c0ae6f3dba79e1c9684657683d89","ref":"refs/heads/1.x","pushedAt":"2023-05-17T09:12:34.207Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"beh backend: Use execv() instead of system() - CVE-2023-24805\n\nWith execv() command line arguments are passed as separate strings and\nnot the full command line in a single string. This prevents arbitrary\ncommand execution by escaping the quoting of the arguments in a job\nwith a forged job title.\n\nIn addition, done the following fixes and improvements:\n\n- Do not allow '/' in the scheme of the URI (= backend executable\n name), to assure that only backends inside /usr/lib/cups/backend/\n are used.\n\n- URI must have ':', to split off scheme, otherwise error out.\n\n- Check return value of snprintf() to create call path for backend, to\n error out on truncation of a too long scheme or on complete failure\n due to a completely odd scheme.\n\n- Use strncat() instead of strncpy() for getting scheme from URI, the latter\n does not require setting terminating zero byte in case of truncation.\n\n- Also exclude \".\" or \"..\" as scheme, as directories are not valid CUPS\n backends.\n\n- Do not use fprintf() in sigterm_handler(), to not interfere with a\n fprintf() which could be running in the main process when\n sigterm_handler() is triggered.\n\n- Use \"static volatile int\" for global variable job_canceled.","shortMessageHtmlLink":"beh backend: Use execv() instead of system() - CVE-2023-24805"}},{"before":"6b19cc6ad0ff047cf8a90dd8f9206e5aa5c48abd","after":"a4809b89909c912998fee9bcfedc43aae5bbe505","ref":"refs/heads/master","pushedAt":"2023-04-11T23:26:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"parallel backend: Added missing #include lines","shortMessageHtmlLink":"parallel backend: Added missing #include lines"}},{"before":"6b19cc6ad0ff047cf8a90dd8f9206e5aa5c48abd","after":null,"ref":"refs/tags/2.0rc1","pushedAt":"2023-04-11T23:22:40.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"}},{"before":"9ad74c455a1f58d5e8d84d82d3cbba9cb27360e9","after":"6b19cc6ad0ff047cf8a90dd8f9206e5aa5c48abd","ref":"refs/heads/master","pushedAt":"2023-04-11T23:10:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"cups-filters 2.0rc1 Release","shortMessageHtmlLink":"cups-filters 2.0rc1 Release"}},{"before":"3a4d8b5b236e315fda392f4ae706578bde7a9c19","after":"9ad74c455a1f58d5e8d84d82d3cbba9cb27360e9","ref":"refs/heads/master","pushedAt":"2023-04-10T14:22:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"Drop C++ references and obsolete C standards (#513)\n\nWith no C++ compiler needed, there is no need to set the\r\nCXXFLAGS or log it during configure. Furthermore, forcing\r\noutdated C11 standard is not a good idea considering compilers\r\nhave moved on. We should not limit our feature set, including\r\ncompiler warnings, to old standards.","shortMessageHtmlLink":"Drop C++ references and obsolete C standards (#513)"}},{"before":"64b3da441f36d54318352a0bb41e162f4c72cd3e","after":"3a4d8b5b236e315fda392f4ae706578bde7a9c19","ref":"refs/heads/master","pushedAt":"2023-03-17T20:02:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tillkamppeter","name":"Till Kamppeter","path":"/tillkamppeter","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1244825?s=80&v=4"},"commit":{"message":"foomatic-rip: Fix a SIGPIPE error when calling gs (#517)\n\nhttps://autopkgtest.ubuntu.com/packages/f/foo2zjs/lunar/ppc64el shows\r\nfoo2zjs's testsuite failing with cups-filters 2.0beta3 on ppc64el because\r\nthe gs command here to check page count is failing with a SIGPIPE when\r\ntrying to write back to the parent. To fix this, we close gs's input fd as\r\nsoon as we know we're done writing to it. Since gs may not have started\r\nprocessing its input until this happens, also give the final poll() a longer\r\ntimeout (5s instead of 1s); without this we see race conditions because\r\nfoomatic-rip gives up before gs has had a chance to finish processing.","shortMessageHtmlLink":"foomatic-rip: Fix a SIGPIPE error when calling gs (#517)"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEEBu00gA","startCursor":null,"endCursor":null}},"title":"Activity · OpenPrinting/cups-filters"}