Message ID | 20211003072406.8959-1-carlo@cteubner.net |
---|---|
State | Accepted |
Headers | show
Return-Path: <pacman-dev-bounces@lists.archlinux.org> Delivered-To: patchwork@archlinux.org Received: from mail.archlinux.org [95.216.189.61] by patchwork.archlinux.org with IMAP (fetchmail-6.4.22) for <fetchmail@localhost> (single-drop); Sun, 03 Oct 2021 07:25:36 +0000 (UTC) Received: from mail.archlinux.org by mail.archlinux.org with LMTP id iNgPOu9aWWFlKgEAK+/4rw (envelope-from <pacman-dev-bounces@lists.archlinux.org>) for <patchwork@archlinux.org>; Sun, 03 Oct 2021 07:25:35 +0000 Received: from lists.archlinux.org (lists.archlinux.org [IPv6:2a01:4f9:c010:9eb4::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.archlinux.org (Postfix) with ESMTPS id A91339839EC; Sun, 3 Oct 2021 07:25:33 +0000 (UTC) Received: from lists.archlinux.org (localhost [IPv6:::1]) by lists.archlinux.org (Postfix) with ESMTP id 59DAC8AA03A; Sun, 3 Oct 2021 07:25:33 +0000 (UTC) X-Original-To: pacman-dev@lists.archlinux.org Delivered-To: pacman-dev@lists.archlinux.org Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by lists.archlinux.org (Postfix) with ESMTPS id 90FAB8AA02B for <pacman-dev@lists.archlinux.org>; Sun, 3 Oct 2021 07:25:30 +0000 (UTC) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 9F3465C0107; Sun, 3 Oct 2021 03:25:29 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sun, 03 Oct 2021 03:25:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cteubner.net; h= from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; s=fm1; bh=HxNxIJ9rcsmTUlrt/cSzXOkTKq 3UaezMyrwJZ2aqIMM=; b=bHYNUMT9si/kjerjVaXuNgfEso7Hzd0SsyzQ9fwFt7 6P9yvF6e3j+AC4AE6baPEmCkPCHiNVTgftRi/KUlWQFB6pS3+mZMJLeoUW/DDvHw 8UQnxuq589H4H9yL3Ox3KgiwL95HyN3HsgV/aA4aLBdcDVD4bwaKjRKiuVahTg7W UfeaHDIctYl9fAAcyVeVD5BE3vTrH7NJVkpup+FjY31Z6k8IAXXKsDsJBmNb7mqB IqcMIRrg19waE6YckKj9Tglw5p/rOzrNFEWgbZ8Ii/mlDhEZBK8P52dkSFHTr+f8 k61WnR1hmkFMGeyemU9YQ0PUuswbsjz/5ddappP7wc/Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :message-id:mime-version:subject:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=HxNxIJ9rcsmTUlrt/ cSzXOkTKq3UaezMyrwJZ2aqIMM=; b=dar3Z1mOjfKQmGvdaQy1qjxo05rjsqyA3 FbHlMVY+pS6iI0Uye274dbzy5b9yBYywj2K/ZUQCy5GbKmcrXrSx0mUM4msLWSzS 3Ucx70BYD8I1shI19aBYxyBKCuiph62A00SWVyCmdp+gUeKREix/Vz62cmeP7yUP qN5P2loOb1dLZpfg+j4qlYvynangHUhu4MFZVOAYuSYLFWCTPetpqaSHnk2MPCkk TZ7BbQ1GA+6JLfL1H34znpyes7VsgXMus9cinng2DqOipcycYrcY55ugK9y6AV7/ hmPE/Y2pZhK9F8gko3THu9w/3kbZ5pTvAgSSTLw49k2Taaix9Z3Fg== X-ME-Sender: <xms:6VpZYe05LlU9n36SrBrnnxT7o69-kaynULJuz9Qrb0jXX2hkUePu0g> <xme:6VpZYRG0KwHoCG3sUAmn4QHrXafw12LigoUBWwB7gTTYlkDw2bhvH0ELizE6AuPxb LHrt0BdcM8CGZGXses> X-ME-Received: <xmr:6VpZYW5Jb3iiINANaRMWf9ylrmYDamV0x5lLiroLoidGir_a5BfG4Yxb0mzxYWgcFsPYcGvjw0bYb2VRL-L46mdEG8By7he0g3arBAvv6Q> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvtddrudekledguddujecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhephffvufffkffoggfgsedtkeertd ertddtnecuhfhrohhmpeevrghrlhhoucfvvghusghnvghruceotggrrhhlohestghtvghu sghnvghrrdhnvghtqeenucggtffrrghtthgvrhhnpeeflefhveegfedvhfdtfeekkeffge ekgfetueekudegvdeiuddttddvteeuleehhfenucevlhhushhtvghrufhiiigvpedtnecu rfgrrhgrmhepmhgrihhlfhhrohhmpegtrghrlhhosegtthgvuhgsnhgvrhdrnhgvth X-ME-Proxy: <xmx:6VpZYf2Dpp0KwLIPibcq8wXxtdxoAZsBN4BXuYhRm1O12QAjOv49eA> <xmx:6VpZYRFF-wnpqy8dWidgePYa77yTDpMFMR-xcmMx8jAsESv1BXglHg> <xmx:6VpZYY9KnOq606N0UilZXYyYKfRg2YnDkMlkkcP3w22pc6Zyukzc-w> <xmx:6VpZYUPmJrwSi39WAemovtlZDJFFW0CDzOZ9UL-_iSwkzKFsE-FMgQ> Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 3 Oct 2021 03:25:28 -0400 (EDT) From: Carlo Teubner <carlo@cteubner.net> To: pacman-dev@lists.archlinux.org Cc: Carlo Teubner <carlo@cteubner.net> Subject: [PATCH] "pacman -Q --changelog": fix writing uninit'd mem Date: Sun, 3 Oct 2021 09:24:06 +0200 Message-Id: <20211003072406.8959-1-carlo@cteubner.net> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: pacman-dev@lists.archlinux.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussion list for pacman development <pacman-dev.lists.archlinux.org> List-Unsubscribe: <https://lists.archlinux.org/options/pacman-dev>, <mailto:pacman-dev-request@lists.archlinux.org?subject=unsubscribe> List-Archive: <https://lists.archlinux.org/pipermail/pacman-dev/> List-Post: <mailto:pacman-dev@lists.archlinux.org> List-Help: <mailto:pacman-dev-request@lists.archlinux.org?subject=help> List-Subscribe: <https://lists.archlinux.org/listinfo/pacman-dev>, <mailto:pacman-dev-request@lists.archlinux.org?subject=subscribe> Errors-To: pacman-dev-bounces@lists.archlinux.org Sender: "pacman-dev" <pacman-dev-bounces@lists.archlinux.org> Authentication-Results: mail.archlinux.org; dkim=pass header.d=cteubner.net header.s=fm1 header.b=bHYNUMT9; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=dar3Z1mO; dmarc=none; spf=pass (mail.archlinux.org: domain of pacman-dev-bounces@lists.archlinux.org designates 2a01:4f9:c010:9eb4::1 as permitted sender) smtp.mailfrom=pacman-dev-bounces@lists.archlinux.org X-Rspamd-Queue-Id: A91339839EC X-Spamd-Result: default: False [-1.01 / 15.00]; DWL_DNSWL_LOW(-1.00)[messagingengine.com:dkim]; MID_CONTAINS_FROM(1.00)[]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; R_MISSING_CHARSET(0.50)[]; RCVD_IN_DNSWL_MED(-0.20)[2a01:4f9:c010:9eb4::1:from]; MAILLIST(-0.20)[mailman]; R_SPF_ALLOW(-0.20)[+ip6:2a01:4f9:c010:9eb4::1]; R_DKIM_ALLOW(-0.20)[cteubner.net:s=fm1,messagingengine.com:s=fm1]; MIME_GOOD(-0.10)[text/plain]; RCVD_IN_DNSWL_LOW(-0.10)[66.111.4.25:received]; HAS_LIST_UNSUB(-0.01)[]; FROM_HAS_DN(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; DMARC_NA(0.00)[cteubner.net]; PREVIOUSLY_DELIVERED(0.00)[pacman-dev@lists.archlinux.org]; RCVD_COUNT_FIVE(0.00)[6]; ASN(0.00)[asn:24940, ipnet:2a01:4f9::/32, country:DE]; FROM_NEQ_ENVFROM(0.00)[carlo@cteubner.net,pacman-dev-bounces@lists.archlinux.org]; DKIM_TRACE(0.00)[cteubner.net:+,messagingengine.com:+]; RCPT_COUNT_TWO(0.00)[2]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; NEURAL_HAM(-0.00)[-0.999]; FORGED_SENDER_MAILLIST(0.00)[] X-Rspamd-Server: mail.archlinux.org |
Series |
"pacman -Q --changelog": fix writing uninit'd mem
|
expand
|
diff --git a/src/pacman/package.c b/src/pacman/package.c index eaee3bb0..3eae9797 100644 --- a/src/pacman/package.c +++ b/src/pacman/package.c @@ -466,11 +466,7 @@ void dump_pkg_changelog(alpm_pkg_t *pkg) char buf[CLBUF_SIZE]; size_t ret = 0; while((ret = alpm_pkg_changelog_read(buf, CLBUF_SIZE, pkg, fp))) { - if(ret < CLBUF_SIZE) { - /* if we hit the end of the file, we need to add a null terminator */ - *(buf + ret) = '\0'; - } - fputs(buf, stdout); + fwrite(buf, 1, ret, stdout); } alpm_pkg_changelog_close(pkg, fp); putchar('\n');
Previously, when printing a package changelog to stdout, we would write chunks of data that were not necessarily nul-terminated to stdout using a function (fputs) which requires the input string to be nul-terminated. On my system, this would result in occasional garbage characters showing up in the "pacman -Qc" output. Fix this by never nul-terminating the chunk, and using the fwrite() function which takes an explicit input size and does not require a nul-terminated string. Signed-off-by: Carlo Teubner <carlo@cteubner.net> --- src/pacman/package.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)