Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Dec 2013 21:26:22 -0800
From:      Peter Wemm <peter@wemm.org>
To:        freebsd-arch@freebsd.org
Subject:   Re: Removal of a pre-existing library interface
Message-ID:  <52AA9A7E.8030500@wemm.org>
In-Reply-To: <52AA3A95.9010904@delphij.net>
References:  <52AA3A95.9010904@delphij.net>

next in thread | previous in thread | raw e-mail | index | archive | help
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--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52AA9A7E.8030500>