From owner-cvs-all Sun Jan 6 3:27:43 2002 Delivered-To: cvs-all@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id 8708937B417; Sun, 6 Jan 2002 03:27:36 -0800 (PST) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id WAA10255; Sun, 6 Jan 2002 22:27:34 +1100 Date: Sun, 6 Jan 2002 22:28:08 +1100 (EST) From: Bruce Evans X-X-Sender: To: Mike Silbersack Cc: , Subject: Re: cvs commit: src/sys/kern uipc_socket2.c In-Reply-To: <200201060650.g066osD48043@freefall.freebsd.org> Message-ID: <20020106222133.H3630-100000@gamplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sat, 5 Jan 2002, Mike Silbersack wrote: > silby 2002/01/05 22:50:54 PST > > Modified files: > sys/kern uipc_socket2.c > Log: > Reorder a calculation in sbreserve so that it does not overflow > with multi-megabyte socket buffer sizes. > > PR: 7420 > MFC after: 3 weeks > > Revision Changes Path > 1.81 +3 -1 src/sys/kern/uipc_socket2.c Er, this was already fixed (mostly better) in rev.1.19. Quad arithmetic is used to inhibit overflow. Overflow can only occur for multi-gigabyte buffer sizes which can only even occur in theory on machines with u_long larger than 32 bits (since sb_max has type u_long). But sb_max's larger than UINT_MAX cause bugs in sbreserve anyway, since the wrong min() function is used for limiting sb->sb_max to sb_max. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message