From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by sourceware.org (Postfix) with ESMTPS id A14283858C74 for ; Sun, 28 May 2023 08:20:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A14283858C74 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id C73B221994; Sun, 28 May 2023 08:20:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1685262015; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=umLYtyksygJEwBgi57cwj+OazgZ7bdtWy7l5RjpfyXs=; b=OhSFGx5uIdRg65rUXPJ9yJnU4y0GIZWwa88jg4kIkdIo5WotJMqqAikcEXD7drg/i+OxR4 dzWoeyLq0D8Sl3O7/s9Bp8F5kv/Cs+rXMsoltLWQCBSOLGpvvKnr9/j6Q3sIk71tJA9896 7j2syRazFfdwGfa5kH/c5nv8ZFqIo2s= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1685262015; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=umLYtyksygJEwBgi57cwj+OazgZ7bdtWy7l5RjpfyXs=; b=41Ma1soXIoXRMLmpjoA6xM6/ac5EZvXPNjPro6eJC2fXkgBrjMvzUotkoRzdIpc1kM6LPl 57pCnSfMf54L+2BQ== Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id A82C7134AB; Sun, 28 May 2023 08:20:15 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap1.suse-dmz.suse.de with ESMTPSA id CYxWJ78Oc2RIQgAAGKfGzw (envelope-from ); Sun, 28 May 2023 08:20:15 +0000 Content-Type: multipart/mixed; boundary="------------dGEnwfJoIdSobI6qhfYII0NQ" Message-ID: <6f27566e-7339-16a1-54d2-3e8317588e9b@suse.de> Date: Sun, 28 May 2023 10:20:30 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] [readline] Fix double free in _rl_scxt_dispose Content-Language: en-US To: chet.ramey@case.edu, gdb-patches@sourceware.org, bug-readline@gnu.org References: <20230523160431.28769-1-tdevries@suse.de> From: Tom de Vries In-Reply-To: X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------dGEnwfJoIdSobI6qhfYII0NQ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 5/27/23 21:10, Chet Ramey wrote: > On 5/23/23 12:04 PM, Tom de Vries wrote: > >> Both these issues need fixing independently, though after fixing the >> first we >> no longer trigger the second. > > Thanks for the report. These are both good fixes. Thanks for the review. Added test-case and committed. Thanks, - Tom --------------dGEnwfJoIdSobI6qhfYII0NQ Content-Type: text/x-patch; charset=UTF-8; name="0001-readline-Fix-double-free-in-_rl_scxt_dispose.patch" Content-Disposition: attachment; filename="0001-readline-Fix-double-free-in-_rl_scxt_dispose.patch" Content-Transfer-Encoding: base64 RnJvbSBhMDZiYzkwMTIwYWZmM2M2NWZlMGYyNzZlNjRkNDMwMzU4OTI4ZWY5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBUb20gZGUgVnJpZXMgPHRkZXZyaWVzQHN1c2UuZGU+ CkRhdGU6IFR1ZSwgMjMgTWF5IDIwMjMgMTQ6MzQ6MTkgKzAyMDAKU3ViamVjdDogW1BBVENI XSBbcmVhZGxpbmVdIEZpeCBkb3VibGUgZnJlZSBpbiBfcmxfc2N4dF9kaXNwb3NlCgpDb25z aWRlciB0aGUgZm9sbG93aW5nIHNjZW5hcmlvLiAgV2Ugc3RhcnQgZ2RiIGluIFRVSSBtb2Rl OgouLi4KJCBnZGIgLXEgLXR1aQouLi4KYW5kIHR5cGUgXlIgd2hpY2ggZ2l2ZXMgdXMgdGhl IHJldmVyc2UtaXNlYXJjaCBwcm9tcHQgaW4gdGhlIGNtZCB3aW5kb3c6Ci4uLgoocmV2ZXJz ZS1pLXNlYXJjaClgJzoKLi4uCmFuZCB0aGVuIHR5cGUgImZvbyIsIHJpZ2h0LWFycm93LWtl eSwgYW5kIF5DLgoKSW4gVFVJIG1vZGUsIGdkYiB1c2VzIGEgY3VzdG9tIHJsX2dldGNfZnVu Y3Rpb24gdHVpX2dldGMuCgpXaGVuIHByZXNzaW5nIHRoZSByaWdodC1hcnJvdy1rZXksIHR1 aV9nZXRjOgotIGF0dGVtcHRzIHRvIHNjcm9sbCB0aGUgVFVJIHNyYyB3aW5kb3csIHdpdGhv dXQgYW55IGVmZmVjdCwgYW5kCi0gcmV0dXJucyAwLgoKVGhlIGludGVudGlvbiBvZiByZXR1 cm5pbmcgMCBpcyBtZW50aW9uZWQgaGVyZSBpbiB0dWlfZGlzcGF0Y2hfY3RybF9jaGFyOgou Li4KICAvKiBXZSBpbnRlcmNlcHRlZCB0aGUgY29udHJvbCBjaGFyYWN0ZXIsIHNvIHJldHVy biAwICh3aGljaCByZWFkbGluZQogICAgIHdpbGwgaW50ZXJwcmV0IGFzIGEgbm8tb3ApLiAg Ki8KICByZXR1cm4gMDsKLi4uCgpIb3dldmVyLCBhZnRlciB0aGlzIDAgaXMgcmV0dXJuZWQg YnkgdGhlIHJsX3JlYWRfa2V5ICgpIGNhbGwgaW4KX3JsX3NlYXJjaF9nZXRjaGFyLCBfcmxf cmVhZF9tYnN0cmluZyBpcyBjYWxsZWQsIHdoaWNoIGluY29ycmVjdGx5IGludGVycHJldHMK MCBhcyB0aGUgZmlyc3QgcGFydCBvZiBhbiB1dGYtOCBtdWx0aWJ5dGUgY2hhciwgYW5kIHRy aWVzIHRvIHJlYWQgdGhlIG5leHQKY2hhci4KCkluIHRoaXMgc3RhdGUsIHRoZSBeQyB0YWtl cyBlZmZlY3QgYW5kIHdlIHJ1biBpbnRvIGEgZG91YmxlIGZyZWUgYmVjYXVzZQpfcmxfaXNl YXJjaF9jbGVhbnVwIGlzIGNhbGxlZCB0d2ljZS4KCkJvdGggdGhlc2UgaXNzdWVzIG5lZWQg Zml4aW5nIGluZGVwZW5kZW50bHksIHRob3VnaCBhZnRlciBmaXhpbmcgdGhlIGZpcnN0IHdl Cm5vIGxvbmdlciB0cmlnZ2VyIHRoZSBzZWNvbmQuCgpUaGUgZmlyc3QgaXNzdWUgaXMgY2F1 c2VkIGJ5IHRoZSBzdWJ0bGUgZGlmZmVyZW5jZSBiZXR3ZWVuOgotIGEgY2hhciBhcnJheSBj b250YWluaW5nIDAgY2hhcnMsIHdoaWNoIGlzIHplcm8tdGVybWluYXRlZCwgYW5kCi0gYSBj aGFyIGFycmF5IGNvbnRhaW5pbmcgMSBjaGFyLCB3aGljaCBpcyB6ZXJvLgoKSW4gbWJydG93 YyB0ZXJtcywgdGhpcyBpcyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuOgouLi4KICBtYnJ0b3dj ICgmd2MsICIiLCAwLCAmcHMpOwouLi4Kd2hpY2ggcmV0dXJucyAtMiwgYW5kOgouLi4KICBt YnJ0b3djICgmd2MsICIiLCAxLCAmcHMpOwouLi4Kd2hpY2ggcmV0dXJucyAwLgoKTm90ZSB0 aGF0IF9ybF9yZWFkX21ic3RyaW5nIGNhbGxzIF9ybF9nZXRfY2hhcl9sZW4gd2l0aG91dCBw YXNzaW5nIGl0IGFuCmV4cGxpY2l0IGxlbmd0aCBwYXJhbWV0ZXIsIGFuZCBjb25zZXF1ZW50 bHkgaXQgY2Fubm90IGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlCnR3bywgYW5kIGRlZmF1bHRz IHRvIHRoZSAiMCBjaGFycyIgY2hvaWNlLgoKTm90ZSB0aGF0IHRoZSBzYW1lIHByb2JsZW0g ZG9lc24ndCBleGlzdCBpbiBfcmxfcmVhZF9tYmNoYXIuCgpGaXggdGhpcyBieSBkZWZhdWx0 aW5nIHRvIHRoZSAiMSBjaGFyIiBjaG9pY2UgaW4gX3JsX2dldF9jaGFyX2xlbjoKLi4uCi0g IGlmIChfcmxfdXRmOGxvY2FsZSAmJiBsID4gMCAmJiBVVEY4X1NJTkdMRUJZVEUoKnNyYykp CisgIGlmIChfcmxfdXRmOGxvY2FsZSAmJiBsID49IDAgJiYgVVRGOF9TSU5HTEVCWVRFKCpz cmMpKQouLi4KClRoZSBzZWNvbmQgcHJvYmxlbSBoYXBwZW5zIHdoZW4gdGhlIGNhbGwgdG8g X3JsX3NlYXJjaF9nZXRjaGFyIGluCl9ybF9pc2VhcmNoX2NhbGxiYWNrIHJldHVybnMuICBB dCB0aGF0IHBvaW50IF9ybF9pc2VhcmNoX2NsZWFudXAgaGFzIGFscmVhZHkKYmVlbiBjYWxs ZWQgZnJvbSB0aGUgc2lnbmFsIGhhbmRsZXIsIGJ1dCB3ZSBwcm9jZWVkIHJlZ2FyZGxlc3Ms IHVzaW5nIGEgY3h0CnBvaW50ZXIgdGhhdCBoYXMgYmVlbiBmcmVlZC4KCkZpeCB0aGlzIGJ5 IGNoZWNraW5nIGZvciAiUkxfSVNTVEFURSAoUkxfU1RBVEVfSVNFQVJDSCkiIGFmdGVyIHRo ZSBjYWxsIHRvCl9ybF9zZWFyY2hfZ2V0Y2hhcjoKLi4uCiAgIGMgPSBfcmxfc2VhcmNoX2dl dGNoYXIgKGN4dCk7CisgIGlmICghUkxfSVNTVEFURSAoUkxfU1RBVEVfSVNFQVJDSCkpCisg ICAgcmV0dXJuIDE7Ci4uLgoKVGVzdGVkIG9uIHg4Nl82NC1saW51eC4KCkFwcHJvdmVkLUJ5 OiBDaGV0IFJhbWV5IDxjaGV0LnJhbWV5QGNhc2UuZWR1PgoKUFIgdHVpLzMwMDU2CkJ1Zzog aHR0cHM6Ly9zb3VyY2V3YXJlLm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MzAwNTYK LS0tCiBnZGIvdGVzdHN1aXRlL2dkYi50dWkvcHIzMDA1Ni5leHAgfCA1MiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCiByZWFkbGluZS9yZWFkbGluZS9pc2VhcmNoLmMgICAg ICAgfCAgMyArKwogcmVhZGxpbmUvcmVhZGxpbmUvbWJ1dGlsLmMgICAgICAgIHwgIDIgKy0K IDMgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IGdkYi90ZXN0c3VpdGUvZ2RiLnR1aS9wcjMwMDU2LmV4cAoKZGlm ZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnR1aS9wcjMwMDU2LmV4cCBiL2dkYi90ZXN0 c3VpdGUvZ2RiLnR1aS9wcjMwMDU2LmV4cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMC4uN2E1N2E1NjI3YTgKLS0tIC9kZXYvbnVsbAorKysgYi9nZGIvdGVzdHN1 aXRlL2dkYi50dWkvcHIzMDA1Ni5leHAKQEAgLTAsMCArMSw1MiBAQAorIyBDb3B5cmlnaHQg MjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworIyBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlm eQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5Z IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl IHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgor IworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwg c2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworIyBSZWdyZXNzaW9uIHRl c3QgZm9yIFBSMzAwNTYuCisKK3R1aXRlcm1fZW52CisKK3NhdmVfdmFycyB7IGVudihMQ19B TEwpIH0geworICAgIHNldGVudiBMQ19BTEwgQy5VVEYtOAorCisgICAgIyBTdGFydCB0ZXJt aW5hbC4KKyAgICBUZXJtOjpjbGVhbl9yZXN0YXJ0IDI0IDgwCisKKyAgICAjIFN0YXJ0IFRV SS4KKyAgICBpZiB7IVtUZXJtOjplbnRlcl90dWldfSB7CisJdW5zdXBwb3J0ZWQgIlRVSSBu b3Qgc3VwcG9ydGVkIgorCXJldHVybgorICAgIH0KKworICAgICMgU2VuZCAiXlIiLCBzdGFy dGluZyByZXZlcnNlLWktc2VhcmNoLgorICAgIHNlbmRfZ2RiICJcMDIyIgorICAgIFRlcm06 OndhaXRfZm9yX3JlZ2lvbl9jb250ZW50cyAwICRUZXJtOjpfY3VyX3JvdyAkVGVybTo6X2Nv bHMgMSBcCisJW3N0cmluZ190b19yZWdleHAgIihyZXZlcnNlLWktc2VhcmNoKWAnOiAiXQor CisgICAgIyBTZW5kICJ4eXoiLgorICAgIHNlbmRfZ2RiICJ4eXoiCisgICAgVGVybTo6d2Fp dF9mb3JfcmVnaW9uX2NvbnRlbnRzIDAgJFRlcm06Ol9jdXJfcm93ICRUZXJtOjpfY29scyAx IFwKKwlbc3RyaW5nX3RvX3JlZ2V4cCAiKGZhaWxlZCByZXZlcnNlLWktc2VhcmNoKWB4eXon OiAiXQorCisgICAgIyBTZW5kIGFycm93LXJpZ2h0LgorICAgIHNlbmRfZ2RiICJcMDMzXFtD IgorCisgICAgIyBXZSBuZWVkIHRvIHRoZSBhcnJvdy1yaWdodCB0byBiZSBwcm9jZXNzZWQg YnkgcmVhZGxpbmUsIGJlZm9yZSB3ZQorICAgICMgc2VuZCB0aGUgZm9sbG93aW5nIF5DLiAg V2FpdGluZyAxIG1zIHNlZW1zIHRvIGRvIHRoYXQuCisgICAgYWZ0ZXIgMQorCisgICAgIyBT ZW5kIF5DLgorICAgIHNlbmRfZ2RiICJcMDAzIgorICAgIGdkYl9hc3NlcnQgeyBbVGVybTo6 d2FpdF9mb3IgIlF1aXQiXSB9ICJDb250cm9sLUMiCit9CmRpZmYgLS1naXQgYS9yZWFkbGlu ZS9yZWFkbGluZS9pc2VhcmNoLmMgYi9yZWFkbGluZS9yZWFkbGluZS9pc2VhcmNoLmMKaW5k ZXggMDgwYmEzY2JiOWMuLjk0MTA3OGY3OTBlIDEwMDY0NAotLS0gYS9yZWFkbGluZS9yZWFk bGluZS9pc2VhcmNoLmMKKysrIGIvcmVhZGxpbmUvcmVhZGxpbmUvaXNlYXJjaC5jCkBAIC04 ODIsNiArODgyLDkgQEAgX3JsX2lzZWFyY2hfY2FsbGJhY2sgKF9ybF9zZWFyY2hfY3h0ICpj eHQpCiAgIGludCBjLCByOwogCiAgIGMgPSBfcmxfc2VhcmNoX2dldGNoYXIgKGN4dCk7Cisg IGlmICghUkxfSVNTVEFURSAoUkxfU1RBVEVfSVNFQVJDSCkpCisgICAgcmV0dXJuIDE7CisK ICAgLyogV2UgbWlnaHQgd2FudCB0byBoYW5kbGUgRU9GIGhlcmUgKi8KICAgciA9IF9ybF9p c2VhcmNoX2Rpc3BhdGNoIChjeHQsIGN4dC0+bGFzdGMpOwogCmRpZmYgLS1naXQgYS9yZWFk bGluZS9yZWFkbGluZS9tYnV0aWwuYyBiL3JlYWRsaW5lL3JlYWRsaW5lL21idXRpbC5jCmlu ZGV4IGRjNjJiNGNjMjRkLi43ZGEzZmYxN2JiNSAxMDA2NDQKLS0tIGEvcmVhZGxpbmUvcmVh ZGxpbmUvbWJ1dGlsLmMKKysrIGIvcmVhZGxpbmUvcmVhZGxpbmUvbWJ1dGlsLmMKQEAgLTM2 Myw3ICszNjMsNyBAQCBfcmxfZ2V0X2NoYXJfbGVuIChjaGFyICpzcmMsIG1ic3RhdGVfdCAq cHMpCiAKICAgLyogTG9vayBhdCBubyBtb3JlIHRoYW4gTUJfQ1VSX01BWCBjaGFyYWN0ZXJz ICovCiAgIGwgPSAoc2l6ZV90KXN0cmxlbiAoc3JjKTsKLSAgaWYgKF9ybF91dGY4bG9jYWxl ICYmIGwgPiAwICYmIFVURjhfU0lOR0xFQllURSgqc3JjKSkKKyAgaWYgKF9ybF91dGY4bG9j YWxlICYmIGwgPj0gMCAmJiBVVEY4X1NJTkdMRUJZVEUoKnNyYykpCiAgICAgdG1wID0gKCpz cmMgIT0gMCkgPyAxIDogMDsKICAgZWxzZQogICAgIHsKCmJhc2UtY29tbWl0OiAwNDBmMjRl MmViMmI5YjQ2ZTczMzdlNTg4MjQ0ZTllYjlhNTg1NTUwCi0tIAoyLjM1LjMKCg== --------------dGEnwfJoIdSobI6qhfYII0NQ--