Skip to content

Commit adb1863

Browse files
committed
Fix possible corruption of previous pointer in ipp_t linked list (Issue #138)
1 parent 453995e commit adb1863

2 files changed

Lines changed: 23 additions & 16 deletions

File tree

CHANGES.md

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
11
Changes in libcups
22
==================
33

4-
libcups v3.0.0 (2026-01-08)
5-
---------------------------
4+
v3.0.1 - YYYY-MM-DD
5+
-------------------
6+
7+
- Fixed a bug when then `ippFindXxx` and `ippSetXxx` functions were mixed
8+
(Issue #138)
9+
10+
11+
v3.0.0 - 2026-01-08
12+
-------------------
613

714
- Added `cupsLangIsRTL` API.
815
- Added `cupsOAuthGetDeviceGrant`, `cupsOAuthGetJWKS`, and `cupsOAuthGetUserId`
@@ -33,8 +40,8 @@ libcups v3.0.0 (2026-01-08)
3340
- Fixed support for device authorization grants.
3441

3542

36-
libcups v3.0rc4 (2025-03-18)
37-
----------------------------
43+
v3.0rc4 - 2025-03-18
44+
--------------------
3845

3946
- Added `cupsCopyCredentialsPublicKey` API.
4047
- Added `cupsGetClock` API.
@@ -58,8 +65,8 @@ libcups v3.0rc4 (2025-03-18)
5865
- Fixed validation of dateTime values with time zones more than UTC+11.
5966

6067

61-
libcups v3.0rc3 (2024-10-22)
62-
----------------------------
68+
v3.0rc3 - 2024-10-22
69+
--------------------
6370

6471
- Updated `cupsCreateCertificateRequest` to store the new private key
6572
separately.
@@ -71,8 +78,8 @@ libcups v3.0rc3 (2024-10-22)
7178
- Fixed a crash bug on Windows.
7279

7380

74-
libcups v3.0rc2 (2024-10-15)
75-
----------------------------
81+
v3.0rc2 - 2024-10-15
82+
--------------------
7683

7784
- Updated `httpConnectAgain` to re-validate the server's X.509 certificate
7885
(Issue #90)
@@ -83,8 +90,8 @@ libcups v3.0rc2 (2024-10-15)
8390
- Fixed a recursion issue in `ippReadIO`.
8491

8592

86-
libcups v3.0rc1 (2024-09-20)
87-
----------------------------
93+
v3.0rc1 - 2024-09-20
94+
--------------------
8895

8996
- Added `cupsFormatString` and `cupsFormatStringv` APIs to safely format UTF-8
9097
strings.
@@ -125,8 +132,8 @@ libcups v3.0rc1 (2024-09-20)
125132
- Fixed how `ippeveprinter` responds to an unsupported request character set.
126133

127134

128-
libcups v3.0b2 (2023-10-05)
129-
---------------------------
135+
v3.0b2 - 2023-10-05
136+
-------------------
130137

131138
- Added the `ipptransform` command to replace/upgrade the `ippevepcl` and
132139
`ippeveps` commands (Issue #65)
@@ -148,8 +155,8 @@ libcups v3.0b2 (2023-10-05)
148155
- Fixed `CUPS_DNSSD_IF_INDEX_LOCAL` when using Avahi.
149156

150157

151-
libcups v3.0b1 (2023-02-09)
152-
---------------------------
158+
v3.0b1 - 2023-02-09
159+
-------------------
153160

154161
- Documentation updates (Issue #32)
155162
- Split out libcups and tools from CUPS 2.x.

cups/ipp.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//
22
// Internet Printing Protocol functions for CUPS.
33
//
4-
// Copyright © 2021-2025 by OpenPrinting.
4+
// Copyright © 2021-2026 by OpenPrinting.
55
// Copyright © 2007-2021 by Apple Inc.
66
// Copyright © 1997-2007 by Easy Software Products, all rights reserved.
77
//
@@ -5954,7 +5954,7 @@ ipp_set_value(ipp_t *ipp, // IO - IPP message
59545954
#endif // !__clang_analyzer__
59555955
DEBUG_printf("4debug_alloc: %p %s %s%s (%u)", (void *)temp, temp->name, temp->num_values > 1 ? "1setOf " : "", ippTagString(temp->value_tag), (unsigned)temp->num_values);
59565956

5957-
if (ipp->current == *attr && ipp->prev)
5957+
if (ipp->current == *attr && ipp->prev && ipp->prev->next == *attr)
59585958
{
59595959
// Use current "previous" pointer...
59605960
prev = ipp->prev;

0 commit comments

Comments
 (0)