From nobody Fri Oct  7 15:26:40 2022
X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MkXGT29cmz4dyGn;
	Fri,  7 Oct 2022 15:26:41 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(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
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4MkXGT1ShNz43dj;
	Fri,  7 Oct 2022 15:26:41 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1665156401;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JCf9c7KB1jrNKMklaIvP/8iA8fOvv+mFp1vOI4I/P5g=;
	b=XqV+eDv1X4a5q+3eNXPFATUCGfhLpGg3DbX+Ha6LuOsgsaa1kLiFToMdi9jSo6wEdMgLJH
	Fd1oTCyumtuSyABS8O+sNyBGGiXlQuqyx2YerFdp+UHc3KQXa3Zq1xVt0TJ03A9hZQlsOq
	Z4I0VjP/mZvr3jvgu5QzNM1g87F2R2VeVDyHQLeDKCv/FNsxzQxWAEPMOMLOAZ0JUKFaLK
	NYurCrCWdC3W/mk7tLg38N9w3OJGHmZ90ZoVI2gQEMktVK358J/cMCPs8DdpRbl+4+MLRp
	eu6d7v9QtpYXfb0izn3EkBnygmUHAZbsrCyJFIjHJT5kY+Zt7Ne2y8wLdyg3/g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(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)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4MkXGT0VlKzdg2;
	Fri,  7 Oct 2022 15:26:41 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 297FQehl048976;
	Fri, 7 Oct 2022 15:26:40 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 297FQe9s048975;
	Fri, 7 Oct 2022 15:26:40 GMT
	(envelope-from git)
Date: Fri, 7 Oct 2022 15:26:40 GMT
Message-Id: <202210071526.297FQe9s048975@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-branches@FreeBSD.org
From: Ed Maste <emaste@FreeBSD.org>
Subject: git: a8db30cd7009 - stable/13 - libc: Fix size range check in setvbuf
List-Id: Commit messages for all branches of the src repository <dev-commits-src-all.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all
List-Help: <mailto:dev-commits-src-all+help@freebsd.org>
List-Post: <mailto:dev-commits-src-all@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-all+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-all+unsubscribe@freebsd.org>
Sender: owner-dev-commits-src-all@freebsd.org
X-BeenThere: dev-commits-src-all@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: emaste
X-Git-Repository: src
X-Git-Refname: refs/heads/stable/13
X-Git-Reftype: branch
X-Git-Commit: a8db30cd7009c46505ee41517d9ce50add4dd478
Auto-Submitted: auto-generated
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1665156401;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JCf9c7KB1jrNKMklaIvP/8iA8fOvv+mFp1vOI4I/P5g=;
	b=j8ljE3Bw4YTN0t2ZMXAlpFeRPwkWrP9BaU7alXJlqZAiivCSkHQ6+HyZi9vAMv+zhefMGl
	KZVQ/SEXY4kaEHOkmT9oFR6l9Ltk6ayxpeX65YtI6u5FKi7pCnrJny2rvOXuGy1iLFmyv1
	nL4kdQrsKW1SuCcyykmaWtX4tLR4+zmLLD3p49ktRMW29J2QYIqOC5K3OGkLdJPr2B2bkc
	RsGHG+0aWA18p5ESpof79phwWhHgPEmyfn97e8ZRNRl41WJ1tYB4dnh0eGl6UIY7qvkItr
	BPls6yybhW7jMN+baBVmt6Bt34r6Iv3FSHQhTvZjuHiD10nMQdfYmdzYi0fdXQ==
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1665156401; a=rsa-sha256; cv=none;
	b=KMpbflomSZiPHLBEueSiCkvRdv0qGIQcuzrqrkGa3L570TrveR5eJGSIf6EE+JdRsJy93N
	/XS6WZ+3v8D9FSusj3o8Yt4KyoyLSXIC/e3LMZx4LPptrmdUU89Hh7NvZyvkEhztztGIKG
	r8Xnz/s1PAZQYX2QB2YliZWyoGBmAeIKaXnhsAqZ0Ye0ktwYplkt1Psnp6EMRHXs3EaOsB
	YfwgMi2Q3U3b4qAnuNvCnbBGFKeTBXtBJKdfuFEGCcXGRyXKYeXsSzdGqNVy8C/Bq2Q1A+
	9ZsJaRC02t99wBIDBixkEfb2kjAo7EfK1APIKec9E5UHDZNhX7RDCeJlGO9P0g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
X-ThisMailContainsUnwantedMimeParts: N

The branch stable/13 has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=a8db30cd7009c46505ee41517d9ce50add4dd478

commit a8db30cd7009c46505ee41517d9ce50add4dd478
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2022-10-03 18:24:42 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2022-10-07 15:23:10 +0000

    libc: Fix size range check in setvbuf
    
    From enh at google.com via openbsd-tech mailing list via pfg@:
    
    The existing test is wrong for LP64, where size_t has twice as many
    relevant bits as int, not just one. (Found by inspection by
    rprichard.)
    
    (cherry picked from commit 9515313b26beb005a521aff2e6edd4d75cd010da)
---
 lib/libc/stdio/setvbuf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/libc/stdio/setvbuf.c b/lib/libc/stdio/setvbuf.c
index 03a3c7263125..8947e61e7c29 100644
--- a/lib/libc/stdio/setvbuf.c
+++ b/lib/libc/stdio/setvbuf.c
@@ -39,6 +39,7 @@ static char sccsid[] = "@(#)setvbuf.c	8.2 (Berkeley) 11/16/93";
 __FBSDID("$FreeBSD$");
 
 #include "namespace.h"
+#include <limits.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include "un-namespace.h"
@@ -62,7 +63,7 @@ setvbuf(FILE * __restrict fp, char * __restrict buf, int mode, size_t size)
 	 * when setting _IONBF.
 	 */
 	if (mode != _IONBF)
-		if ((mode != _IOFBF && mode != _IOLBF) || (int)size < 0)
+		if ((mode != _IOFBF && mode != _IOLBF) || size > INT_MAX)
 			return (EOF);
 
 	FLOCKFILE_CANCELSAFE(fp);