From owner-freebsd-hackers@FreeBSD.ORG Mon May 5 19:48:11 2008 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E3964106567A; Mon, 5 May 2008 19:48:11 +0000 (UTC) (envelope-from ghelmer@palisadesys.com) Received: from cetus.palisadesys.com (cetus.palisadesys.com [205.237.115.21]) by mx1.freebsd.org (Postfix) with ESMTP id 60BE28FC19; Mon, 5 May 2008 19:48:11 +0000 (UTC) (envelope-from ghelmer@palisadesys.com) Received: from magellan.palisadesys.com (serverwatch [172.16.1.98]) by cetus.palisadesys.com (8.14.1/8.14.1) with ESMTP id m45JGRC9021554; Mon, 5 May 2008 14:16:27 -0500 (CDT) (envelope-from ghelmer@palisadesys.com) Received: from [127.0.0.1] (cetus.palisadesys.com [205.237.115.21]) (authenticated bits=0) by magellan.palisadesys.com (8.14.1/8.14.1) with ESMTP id m45JGONi052073; Mon, 5 May 2008 14:16:25 -0500 (CDT) (envelope-from ghelmer@palisadesys.com) Message-ID: <481F5D1D.6050703@palisadesys.com> Date: Mon, 05 May 2008 14:16:45 -0500 From: Guy Helmer User-Agent: Thunderbird 2.0.0.14 (Windows/20080421) MIME-Version: 1.0 To: Carl Shapiro References: <4dcb5abd0805050540m292b319aw52aa2cb8ba018e12@mail.gmail.com> <481F0DB3.9070505@FreeBSD.org> <481F48EE.3050806@elischer.org> <481F4EED.2030300@FreeBSD.org> <4dcb5abd0805051132o77d68e36u3f0ad38630a02afd@mail.gmail.com> In-Reply-To: <4dcb5abd0805051132o77d68e36u3f0ad38630a02afd@mail.gmail.com> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-3.0 (magellan.palisadesys.com [205.237.115.20]); Mon, 05 May 2008 14:16:25 -0500 (CDT) X-Palisade-MailScanner-Information: Please contact the ISP for more information X-Palisade-MailScanner: Found to be clean X-Palisade-MailScanner-SpamCheck: not spam (whitelisted), SpamAssassin (not cached, score=-4.398, required 6, autolearn=not spam, ALL_TRUSTED -1.80, BAYES_00 -2.60, HTML_MESSAGE 0.00) X-Palisade-MailScanner-From: ghelmer@palisadesys.com Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-hackers@freebsd.org, Julian Elischer Subject: Re: binary compatibility query X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 May 2008 19:48:12 -0000 Carl Shapiro wrote: > Kris & Julian > > Thank you for clarifiying the compatibility situation. This > information was exactly what I was looking for. > > I have a follow-up question based on this remark... > > On 5/5/08, Kris Kennaway wrote: > >> Actually we don't attempt to keep this form of ABI compatibility (running >> 6.3 binaries on 6.0, for example), because it basically precludes ever >> adding new functions to libc within a branch, or new syscalls to the kernel. >> You are correct that often binaries will not notice these accumulated >> changes though, or can be carefully constructed to avoid them. >> > > If my binary only executes system calls indirectly through libc > interfaces, as far as libc and libm are concerned, are new symbols the > only thing I need to worry about? > Not necessarily. For example, the DNS resolver library was updated between FreeBSD 6.1 and 6.2 to bind 9's resolver library, resulting in the disappearance of the _res symbol in 6.2. As long as you depend only on public interfaces, though, you should be fine. Guy -- Guy Helmer, Ph.D. Chief System Architect Palisade Systems, Inc.