Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API/ABI problem #510

Closed
bastien-roucaries opened this issue Jun 12, 2017 · 6 comments
Closed

API/ABI problem #510

bastien-roucaries opened this issue Jun 12, 2017 · 6 comments

Comments

@bastien-roucaries
Copy link

Hi,

Magick++/lib/Magick++/color.h declare constructors has:
// Construct Color using the specified RGB values
Color(Quantum red_,Quantum green_,Quantum blue_);

// Construct Color using the specified RGBA values
Color(Quantum red_,Quantum green_,Quantum blue_,Quantum alpha_);

instead of:
// Construct Color using the specified RGB values
Color(Magick::Quantum red_,Magick::Quantum green_,Magick::Quantum blue_);

// Construct Color using the specified RGBA values
Color(Magick::Quantum red_,Magick::Quantum green_,Magick::Quantum blue_,Magick::Quantum alpha_);

Correcting this is needed for a API point of view (API is not consistant accross quantum buiit) but it will need a so bump of magick++ lib

Bastien

@bastien-roucaries
Copy link
Author

Ping

@dlemstra
Copy link
Member

Can you clarify why we need to change this? Magick::Quantum and Quantum are the same type.

@bastien-roucaries
Copy link
Author

dlemstra: they are the same type but symbols emited are not the same... You should use Magick::Quantum that is independant of size of int due to an obscrure rule of c++ ABI

@mikayla-grace
Copy link

Thanks for the problem report. We can reproduce it and will have a patch to fix it in GIT master branch @ https://github.com/ImageMagick/ImageMagick later today. The patch will be available in the beta releases of ImageMagick @ http://www.imagemagick.org/download/beta/ by sometime tomorrow.

@bastien-roucaries
Copy link
Author

Could you revert please ? This is note the right way to do... And could you separate the two issue the fix for #510 is fine the fix for #493 is not fine...

@bastien-roucaries
Copy link
Author

This one could be closed I think

@dlemstra dlemstra closed this as completed Aug 2, 2017
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Sep 9, 2017
Changelog:
2017-09-03  6.9.9-11 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-11, GIT revision 11969:a12fbb873:20170903.

2017-08-28  6.9.9-11 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * Don't overwrite symbolic links when the shred policy is enabled.

2017-08-27  6.9.9-10 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-10, GIT revision 11936:a8112a821:20170827.

2017-08-26  6.9.9-10 Dirk Lemstra <dirk@lem.....org>
  * Fixed thread safety issue inside the pango and librsvg decoder
    (reference: dlemstra/Magick.NET#91).

2017-08-20  6.9.9-9 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-9, GIT revision 11915:5205bda17:20170820.

2017-08-18  6.6.9-9 Glenn Randers-Pehrson <glennrp@image...>
  * Fixed bug with writing tIME chunk when timezone has a negative offset
    (reference: ImageMagick/ImageMagick#685).

2017-08-18  6.9.9-8 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-8, GIT revision 11906:26078285f:20170818.

2017-08-18  6.9.9-8 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-08-12  6.9.9-7 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-7, GIT revision 11893:8c4c56a0e:20170812
    (Windows binaries out of sync).

2017-08-10  6.9.9-6 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-6, GIT revision 11886:af2b102db:20170810.

2017-08-10  6.9.9-6 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-08-10  6.9.9-6 Glenn Randers-Pehrson <glennrp@image...>
  * tests/validate.c: Show the reason for failures in the test logs,
    if available.

2017-08-03  6.9.9-6 Glenn Randers-Pehrson <glennrp@image...>
  * Put UTC time in the PNG tIME chunk instead of local time (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32447).

2017-08-02  6.9.9-5 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-5, GIT revision 11858:7a555e53f:20170802.

2017-08-01  6.9.9-5 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-07-29  6.9.9-5 Glenn Randers-Pehrson <glennrp@image...>
  * Properly set image->colorspace in the PNG decoder (previously
    it was setting image->gamma, but only setting image->colorspace
    for grayscale and gray-alpha images.  Reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32418).
  * Fix improper use of NULL in the JNG decoder (CVE-2017-11750, Reference
    ImageMagick/ImageMagick#632).

2017-07-29  6.9.9-5 Cristy  <quetzlzacatenango@image...>
  * Off by one error for gradient coder (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32416).

2017-07-28  6.9.9-4 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-4, GIT revision 11833:4e81160d6:20170728.

2017-07-25  6.9.9-4 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * coders/png.c: Initialized quantum_scanline to prevent a bad free
    (reference ImageMagick/ImageMagick#621).

2017-07-24  6.9.9-4 Glenn Randers-Pehrson <glennrp@image...>
  * Removed write_chunk_from_profile() from coders/png.c because it
    has not worked at least since version 6.7.6.
  * Removed many redundant checks before RelinquishMagickMemory(),
    which is safe to call with a NULL argument.
  * Removed vpAg chunk write support (we are now writing caNv instead).
  * coders/png.c: Initialized quantum_info to prevent memory leakage
    (reference ImageMagick/ImageMagick#582,
    CVE-2017-11539).
  * coders/png.c: fixed NULL dereference when trying to write an empty MNG
    (CVE-2017-11522, reference
    ImageMagick/ImageMagick#586).

2017-07-24  6.9.9-3 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-3, GIT revision 11809:2bd88257b:20170724.

2017-07-23  6.9.9-3 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-07-23  6.9.9-3 Glenn Randers-Pehrson <glennrp@image...>
  * Fix memory leaks when reading a malformed JNG image:
    ImageMagick/ImageMagick#600).
    ImageMagick/ImageMagick#602).

2017-07-22  6.9.9-2 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-2, GIT revision 11786:21b23bf09:20170722.

2017-07-22  6.9.9-2 Cristy  <quetzlzacatenango@image...>
  * composite -dissolve works again reference
    ImageMagick/ImageMagick#597).

2017-07-21  6.9.9-1 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-1, GIT revision 11782:75f7e994e:20170721.

2017-07-19  6.9.9-1 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-07-15  6.9.9-1 Glenn Randers-Pehrson <glennrp@image...>
  * Don't write a hex-encoded Exif profile when writing the eXIf chunk.
  * Added caNv, eXIf, and pHYs to the list of PNG chunks to be removed
    by the "-strip" option.

2017-07-15  6.9.9-0 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 6.9.9-0, GIT revision 11738:8903861b2:20170715.

2017-07-13  6.9.9-0 Glenn Randers-Pehrson <glennrp@image...>
  * Implemented PNG eXIf chunk support.

2017-07-08  6.9.9-0 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * Don't use variable float_t / double_t, bump SO (reference
    ImageMagick/ImageMagick#510).
  * Support DNG images with libraw delegate library.
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Sep 13, 2017
2017-09-11  7.0.7-2 Glenn Randers-Pehrson <glennrp@image...>
  * Use signed integer arithmetic to caluculate timezone corrections (reference
    ImageMagick/ImageMagick#685).

2017-09-09  7.0.7-1 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.7-1, GIT revision 21065:ab2194121:20170909.

2017-09-09  7.0.7-1 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-09-05 7.0.7-1 Dirk Lemstra <dirk@lem.....org>
  * Added -define tiff:write-layers=true to add support for writing layered
    tiff files.

2017-09-03  7.0.7-0 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.7-0, GIT revision 20996:2f8ac2203:20170903.

2017-08-28  7.0.7-0 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * Don't overwrite symbolic links when the shred policy is enabled.

2017-08-27  7.0.6-10 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-10, GIT revision 20920:9940c367a:20170827.

2017-08-27  7.0.6-10 Cristy  <quetzlzacatenango@image...>
  * Support -metric ssim, structual similarity index.

2017-08-26  7.0.6-10 Dirk Lemstra <dirk@lem.....org>
  * Fixed thread safety issue inside the pango and librsvg decoder
    (reference: dlemstra/Magick.NET#91).

2017-08-20  7.0.6-9 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-9, GIT revision 20860:3f307d8ad:20170820.

2017-08-18  7.0.6-9 Glenn Randers-Pehrson <glennrp@image...>
  * Fixed bug with writing tIME chunk when timezone has a negative offset
    (reference: ImageMagick/ImageMagick#685)

2017-08-18  7.0.6-8 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-8, GIT revision 20838:e2eb79427:20170818.

2017-08-14  7.0.6-7 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * Support CubicSpline resize filter.  Define the lobes with the
    -define filter:lobes={2,3,4} (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=2&t=32506).
  * Prevent assertion failure when creating PDF thumbnail (reference
    ImageMagick/ImageMagick#674).

2017-08-12  7.0.6-7 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-7, GIT revision 20799:0db4d8a16:20170812.

2017-08-12  7.0.6-7 Cristy  <quetzlzacatenango@image...>
  * Improve EPS aliasing (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32497).

2017-08-11  7.0.6-7 Dirk Lemstra <dirk@lem.....org>
  * Added a new option called 'dds:fast-mipmaps' (reference
    ImageMagick/ImageMagick#558)
  * The mipmaps of a dds image can now be created from a list of images with
    -define dds:mipmaps=fromlist (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=2&t=30236).

2017-08-10  7.0.6-6 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-6, GIT revision 20775:061d0fa25:20170810.

2017-08-10  7.0.6-6 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-08-10  7.0.6-6 Glenn Randers-Pehrson <glennrp@image...>
  * tests/validate.c: Show the reason for failures in the test logs,
    if available.

2017-08-03  7.0.6-6 Glenn Randers-Pehrson <glennrp@image...>
  * Put UTC time in the PNG tIME chunk instead of local time (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32447).

2017-08-02  7.0.6-5 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-5, GIT revision 20715:26b28d50a:20170802.

2017-08-01  7.0.6-5 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-07-29  7.0.6-5 Glenn Randers-Pehrson <glennrp@image...>
  * Properly set image->colorspace in the PNG decoder (previously
    it was setting image->gamma, but only setting image->colorspace
    for grayscale and gray-alpha images.  Reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32418).
  * Fix improper use of NULL in the JNG decoder (CVE-2017-11750, Reference
    ImageMagick/ImageMagick#632).
  * Added "-define png:ignore-crc" option to PNG decoder. When you know
    your image has no CRC or ADLER32 errors, this can speed up decoding.
    It is also helpful in debugging bug reports from "fuzzers".

2017-07-29  7.0.6-5 Cristy  <quetzlzacatenango@image...>
  * Off by one error for gradient coder (reference
    https://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=32416),
    ImageMagick/ImageMagick#612).

2017-07-28  7.0.6-4 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-4, GIT revision 20657:4e81160d6:20170728.

2017-07-24  7.0.6-4 Cristy  <quetzlzacatenango@image...>
  * YUV coder no longer renders streaks (reference
    ImageMagick/ImageMagick#612).
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues) including
    ImageMagick/ImageMagick#618 (CVE-2017-12676).
  * coders/png.c: Initialized quantum_scanline and quantum_info
    to prevent a bad free (reference
    ImageMagick/ImageMagick#621).

2017-07-25  7.0.6-4 Glenn Randers-Pehrson <glennrp@image...>
  * Removed write_chunk_from_profile() from coders/png.c because it has
    not worked at least since version 6.7.6.
  * Removed many redundant checks before RelinquishMagickMemory(), which
    is safe to call with a NULL argument.
  * Added experimental PNG orNT chunk, to store image->orientation.
  * Removed vpAg chunk write support (we are now writing caNv instead).

2017-07-24  7.0.6-3 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-3, GIT revision 20598:cc9c43b44:20170724.

2017-07-23  7.0.6-3 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).

2017-07-23  7.0.6-3 Glenn Randers-Pehrson <glennrp@image...>
  * Fix memory leaks when reading a malformed JNG image:
    ImageMagick/ImageMagick#600 (CVE-2017-13141),
    ImageMagick/ImageMagick#602 (CVE-2017-12565).

2017-07-21  7.0.6-2 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-2, GIT revision 20549:62fcf3d96:20170721.

2017-07-19  7.0.6-2 Cristy  <quetzlzacatenango@image...>
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * The -monochrome option no longer returns a blank canvas (reference
    ImageMagick/ImageMagick#594).
  * coders/png.c: fixed memory leak of quantum_info (CVE-2017-11539, reference
    ImageMagick/ImageMagick#582
  * coders/png.c: fixed NULL dereference when trying to write an empty MNG
    (CVE-2017-11522, reference
    ImageMagick/ImageMagick#586).

2017-07-15  7.0.6-2 Glenn Randers-Pehrson <glennrp@image...>
  * Added caNv, eXIf, and pHYs to the list of PNG chunks to be removed
    by the "-strip" option.

2017-07-15  7.0.6-1 Cristy  <quetzlzacatenango@image...>
  * Release ImageMagick version 7.0.6-1, GIT revision 20447:c2a315e10:20170715.

2017-07-13  7.0.6-1 Glenn Randers-Pehrson <glennrp@image...>
  * Implemented PNG eXIf chunk support.

2017-07-08  7.0.6-1 Cristy  <quetzlzacatenango@image...>
  * Support new -auto-threshold option.  OTSU and Triangle methods are
    currently supported.  Look for the Kapur method in the next release.
  * Fixed numerous memory leaks (reference
    https://github.com/ImageMagick/ImageMagick/issues).
  * Don't use variable float_t / double_t, bump SO (reference
    ImageMagick/ImageMagick#510).
  * Support DNG images with libraw delegate library.

2017-07-02  7.0.6-1 Glenn Randers-Pehrson <glennrp@image...>
  * Reject PNG file that is too small (under 60 bytes) to contain
    a valid image.
  * Reject JPEG file that is too small (under 107 bytes) to contain
    a valid image.
  * Reject JNG file that is too small (under 147 bytes) to contain
    a valid image.

2017-06-22  7.0.6-1 Glenn Randers-Pehrson <glennrp@image...>
  * Stop a memory leak in read_user_chunk_callback() (reference
    ImageMagick/ImageMagick#517,
    CVE 2017-11310).
joebonrichie pushed a commit to solus-packages/imagemagick that referenced this issue Aug 14, 2023
Summary:
Software:
- Implemented PNG eXIf chunk support.
- Support new -auto-threshold option. OTSU and Triangle methods are currently supported. Look for the Kapur method in the next release.
- Fixed numerous memory leaks [reference](https://github.com/ImageMagick/ImageMagick/issues).
- Don't use variable float_t / double_t, bump SO [reference](ImageMagick/ImageMagick#510).
- Support DNG images with libraw delegate library.
- Reject PNG file that is too small (under 60 bytes) to contain a valid image.
- Reject JPEG file that is too small (under 107 bytes) to contain a valid image.
- Reject JNG file that is too small (under 147 bytes) to contain a valid image.
- CVE 2017-11310 Stop a memory leak in read_user_chunk_callback() [reference](ImageMagick/ImageMagick#517).

Package:
- remove inherited dependencies
- add raw support

Signed-off-by: Pierre-Yves <pyu@riseup.net>

Test Plan: Usual quick checks with `convert`, `compare` and `mogrify`

Reviewers: #triage_team, JoshStrobl

Reviewed By: #triage_team, JoshStrobl

Tags: #security

Differential Revision: https://dev.solus-project.com/D618
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants