Josselin Mouette <j...@debian.org> writes:
> Le jeudi 16 mai 2013 à 17:35 -0700, Russ Allbery a écrit : 

>> I have a C shared library that takes a pointer to an opaque struct as
>> the first argument to most of its API calls.  The internal layout of
>> that opaque struct is changing (to add new members).  The only way to
>> create the opaque state struct is via a call to remctl_new(), which
>> returns a pointer to it.  Nothing else about the ABI is changing, and
>> client programs cannot see or manipulate the struct members directly
>> (at least without poking about in memory, of course).
>> 
>> Is that an ABI break that requires an SONAME change?

> Opaque structures are usually here precisely to avoid SONAME changes.
> Glib and GTK+ do that all the time, and I don’t see applications
> breaking horribly, unless they do unwarranted assumptions about the
> internals of those structures.

> So if this is the only change, I’d say you are pretty safe here.

Cool, thanks (and to everyone else as well) for the replies.  I was
*fairly* sure that I understood this, but I didn't want to release
something and then be wrong.  :)

-- 
Russ Allbery (r...@debian.org)               <http://www.eyrie.org/~eagle/>


--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87r4h6uome....@windlord.stanford.edu

Reply via email to