From owner-freebsd-arch@FreeBSD.ORG Fri Dec 13 05:26:24 2013 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 53C71BC9 for ; Fri, 13 Dec 2013 05:26:24 +0000 (UTC) Received: from mail-pb0-x22d.google.com (mail-pb0-x22d.google.com [IPv6:2607:f8b0:400e:c01::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1BC77119C for ; Fri, 13 Dec 2013 05:26:24 +0000 (UTC) Received: by mail-pb0-f45.google.com with SMTP id rp16so1885218pbb.32 for ; Thu, 12 Dec 2013 21:26:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=message-id:date:from:organization:user-agent:mime-version:to :subject:references:in-reply-to:content-type; bh=elOdP2fiHlWfGtilYKYH2qiFewCLllms4LwwBbZGDaU=; b=rqK1OL/kXABtDGThS/rfYvKmsi27NeG4OF1odd9ZLzuNslzNs7r3uXUp7YTQp3djBy 2/+WCREW2vXzXBP+1NgJomK3hkS/y9ySHwsK2SHSJFZ7TP25+t8ScYPhsA7pVNmGDymj erDRR9hhjwvC1HXw1omngPj7PXdhJ3K0CIbxM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:organization:user-agent :mime-version:to:subject:references:in-reply-to:content-type; bh=elOdP2fiHlWfGtilYKYH2qiFewCLllms4LwwBbZGDaU=; b=QQsOvvGPgPGBCRCf1LtIv8bQUpSb7Veri+AgRl5CUmumiaRQwI/10Wxq7vrmpGe1Wt RJEiGqMRrZIGIBm/6cVVLkGPZSA/hidGPU1akRShTgSoGQ8CI6W9DCCBDHipvVHNrnu6 2j63Df7xAhDrJ2uqlOFHV1XAcM1Q7jgfxaYa83EueWrVUwGpsnEnDoadJdjg2/vJ9Rnm UdB9KUcrXm5rci/Ts8BJfBuJBKS9LxccEb3FixjUyIIKiuKBmT5Ce3yfFt0pMe1C1YAh WFOGmXA1iwR1d81Y2ZXFAwHV83dTwaDmMvaDrHL3lwWSI2IEbINki/72AebDKIrjdYdi 8/yA== X-Gm-Message-State: ALoCoQl4nD2zBMSIerGFaVekVkWbcvS9hLpeVvM3VT2Vpn3gDt6zhWsRM0/SNIfl/Jgr01JrB/1V X-Received: by 10.68.244.168 with SMTP id xh8mr919529pbc.3.1386912383795; Thu, 12 Dec 2013 21:26:23 -0800 (PST) Received: from hackintosh.wemm.org (c-71-198-8-135.hsd1.ca.comcast.net. [71.198.8.135]) by mx.google.com with ESMTPSA id ik1sm1669240pbc.9.2013.12.12.21.26.21 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 12 Dec 2013 21:26:22 -0800 (PST) Message-ID: <52AA9A7E.8030500@wemm.org> Date: Thu, 12 Dec 2013 21:26:22 -0800 From: Peter Wemm Organization: World Domination in progress. User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: freebsd-arch@freebsd.org Subject: Re: Removal of a pre-existing library interface References: <52AA3A95.9010904@delphij.net> In-Reply-To: <52AA3A95.9010904@delphij.net> X-Enigmail-Version: 1.6 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="aV4TNWpD6EQf4vKHqotjFT96nJOBuIiHr" X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Dec 2013 05:26:24 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --aV4TNWpD6EQf4vKHqotjFT96nJOBuIiHr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 12/12/13, 2:37 PM, Xin Li wrote: > Hi, >=20 > Recently, OpenBSD have moved from RC4 to ChaCha20 for their > arc4random(3) family of functions and they have later removed a few > interfaces for good reasons. >=20 > On FreeBSD, we aim to maintain ABI stability so we can not simply > remove the interface; we can not remove it from -HEAD because they are > established by previous -STABLE branches, or we would have to bump > major number of shared libraries. After thinking about some other > alternatives, I have created two dummy (well, they also log the event) > compatibility shims for these two interfaces that gets removed from > OpenBSD. >=20 > Is this a reasonable approach of handling changes like this? If you wish to avoid a major bump and the symbols are versioned (as they = are in libc), the one option is this: rename function from arcfour_foo to arcfour_foo_compat and _sym_compat(arcfour_foo, arcfour_foo_compat, FBSD_1.3); That then provides a versioned symbol to satisfy runtime dependencies but= will not allow new references. We did this with the iconv stuff for early 10.x binaries that we didn't w= ant to break but make sure there were no new unintended references. --=20 Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6F= JV UTF-8: for when a ' just won\342\200\231t do. --aV4TNWpD6EQf4vKHqotjFT96nJOBuIiHr Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (Darwin) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iEYEARECAAYFAlKqmoIACgkQFRKuUnJ3cX/70gCgiVUvLYfJMhhn2TWY9pWIrY0d AYIAoJnzGhy1Dtj28HGhO0LZwipEi+yP =mz8X -----END PGP SIGNATURE----- --aV4TNWpD6EQf4vKHqotjFT96nJOBuIiHr--