Repository navigation
libcupsfilters 2.1.2 #270
tillkamppeter
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Due to regressions in the transition from QPDF to PDFio (PR #71) in release 2.2.1 we have issued this 2.1.2 release containing everything of 2.1.1 except the transition from QPDF to PDFio, plus some fixes which have appeared after the 2.2.1 release. This release especially makes all fixes available which were done after the 2.1.1 release 1.5 years ago.
cfFilterTextToPDF()FC_MONOconstraint to allow proportional fonts. Some languages have non-monospaced scripts and now they can correctly load their intended fonts.cfFilterTextToPDF()expects UTF-8 input by default now.cfFilterImageTo...()filter functions read and convert these files.Winter of Code 4.0 project by Titiksha Bansal. Thanks a lot.
(Pull request Add JPEG‑XL Support to libcupsfilters (WoC 4.0 Contribution) #82)
cfFilterGhostscript()introducedcupsHalftoneTypedithering algorithms. Controlled withhalftone-typejob option orcupsHalftoneTypePPD option. Added stochastic halftoning, bi-level threshold, and an algorithm from foo2zjs, 8x8, genordered, and spot from PDF (Pull request Ghostscript (gstoraster): Introduce cupsHalftoneType dithering algorithms #92, Ghostscript (gstoraster): new halftone/dithering algorithms #160)make checkand also Debian's autopkgtests as unit testspdftopdfvalidation (Pull request tests: Add malformed PDF testcase for pdftopdf validation #131)testfiltersjust go through all lines of test cases instead of usingline count as a parameter (Pull request tests: Fix testfilters to run loop till EOF instead of using line count logic #128)
FilterChain()support totestfilters. Manually providing a filter chain is optional, if not supplied, it is set automatically as before (Pull request tests: Add optional manual FilterChain support to testfilters #122)test-pclm-overflow.shfor PCLm strip overflow, skip (exit 77) when AddressSanitizer is unavailable, also temporarily use "new-delete-type-mismatch" option, as there are delete-type-mismatch errors only on some architectures and locally not reproducible (Issue 2.2.0: test failures / release tarballs are missing test-pdftoraster-copy-height.c #200, Pull requests Fix PCLm strip overflow and add regression test #105, Fix 2.2.0 test packaging and CUPS datadir detection (#200, #201) #204).*-supported/*-defaultattributes, in thecfIPPAttrEnumValForPrinter()function. Check IPP tags (data types) to avoid NULL dereferences (OCU-01-001, Issue OCU-01-001 WP2: Crash via Wrong-Tag *-Supported Attributes (Medium) #149, pull request Fix crash from wrong-tag *-supported/*-default attributes (OCU-01-001) #162)cfGetBackSideOrientation()andcfGetPrintRenderIntent()look up several IPP attributes. Also here check tags/data types to avoid NULL dereferences (OCU-01-003, Issue OCU-01-003 WP2: Crash via Wrong-Tag Driverless IPP Attributes (Medium) #163, pull request Fix crash from wrong-tag driverless IPP attributes (OCU-01-003) #164)cfFilterPDFToRaster()if PDF has too large page dimensions. Crop dimensions to maximum allowed by standard, 14400x14400pt, 200x200in, 5x5m, if needed.(CVE-2025-64503)
cfImageLutcolor space
cfFilterImageTo...(): Added error handling for libpng and libjpeg function calls to avoid the process being aborted. (Pull request image-png.c: Handle libpng errors via longjmp()/setjmp() #168, image-jpeg.c: Handle jpeg errors as well #169)(CVE-2026-64612)
(CVE-2026-64611)
pclmtoraster: Treatrealloc()failures correctly, freeing the allocated memory. Found by the cppcheck analyzercfFilterGhostscript(): Serialize raster integer parameters as signed integers (Issue cfFilterGhostscript fails with rangecheck when PPD sets cupsCompression=-1 #218, cfFilterGhostscript: duplex DM3 (Rotated) emits -dcupsInteger1=4294967295; Ghostscript appleraster rangecheck #222, pull request ghostscript: serialize raster integer parameters as signed #225)pwgtoraster: Reject overflowing raster buffers (Issue pwgtoraster: horizontal replication undersizes the input row #192, pwgtoraster: planar page-buffer multiplication wraps to zero #193, pwgtoraster: vertical averaging size wraps before heap allocation #194, pull request pwgtoraster: reject overflowing raster buffers #210)NormalizeMakeModelwhen manufacturer name too long (Issue stack-buffer-overflow in cfIEEE1284NormalizeMakeModel() #136, pull request cupsfilters: ieee1284: fix out-of-bounds read in NormalizeMakeModel #139)ColorModeloroutput-modeif there's noprint-color-mode(Issue ghostscript sigsegv (sig 11) withimplicitclass:://...but works withsocketordnssd#126, pull request Use ColorModel or output-mode if there's no print-color-mode. Fixes #126 #127)pdftoraster,gsto...,mupdftopwg: Fix NULL-pointer dereference when parsing%%PDFTOPDF...comments (Pull request Fix NULL-pointer dereference when parsing %PDFTOPDF comments #94)pdftoraster: Check result ofrender_page()as it may return NULL if the page is not properly constructed (Pull request pdftoraster: Check result of render_page #95)imagetopdf: convert custom media sizemin_widthandmin_heightto points (Issue Incorrect custom media dimensions #87, pull request imagetopdf: convert custom media size min_width and min_height to points. Fixes #87 #93)cfFilterChain(): Initialize return value to 0. In some cases the function exits with non-zero status when all filters exit with no errors (zero status).cfFilterTextToPDF(): Let all Arabic characters be rendered right-to-left (Issue Arabic text generated by texttopdf is not RTL as it shoud be #84)cupsParseOptions()testfilters.cto use CUPS 3.0 API with compatibility shim for CUPS 2.x and older. Given that this is an end-user program, we don't want to includelibcups2-private.h. Also tweaked Makefile to link against proper CUPS library.cups/backend.h../configureoption. When building without fontconfig,cfFilterTextToPDF()gets no-op (to keep API) (Pull request Allow building without fontconfig #83)./configureoption--with-cjk-fontssets alternative name (Pull request configure.ac: Make CJK fonts name configurable #96)CUPS_DATADIRfrom the.pccups_datadirvariable, not from$prefix/share/cups(wrong under an arch-specific CUPS prefix); fallback kept (Issue 2.2.0: cups datadir handling pkgconfig vs. cups-config #201, Pull request Fix 2.2.0 test packaging and CUPS datadir detection (#200, #201) #204).sys/stat.hinclude for Solaris (Issue Missing sys/stat.h header on Solaris #97, pull request Fix missing sys/stat.h include for Solaris #130)/bin/shfortestfilters.shto avoid dependency on bash (Pull request Use /bin/sh for testfilters.sh to avoid dependency on bash #67)cfFilterImageToPDF(): Added extra debug log messages concerning page orientation (Pull request Fix landscape orientation issue #102)This discussion was created from the release libcupsfilters 2.1.2.
All reactions