On Tue, Jan 20, 2009 at 07:40:08PM +0100, Bart Van Assche wrote: > On Tue, Jan 20, 2009 at 7:20 PM, Konrad Rzeszutek > <kon...@virtualiron.com> wrote: > > > >> > I would recommend that you provide as the first variable in all of the > >> > structs > >> > an unsigned int called 'version'. This way if the structs are extended > >> > they > >> > would be backwards compatible and there is an easy way to identify which > >> > version of structs they are. > >> > > >> > >> Erm, given the amount of programs which will probably end up using this > >> (not > >> all that much) a distro should be able to easily rebuild all those in case > >> of > >> an ABI change and thus a soname bump. I understand what you are trying to > >> say > >> here, but IMHO the added complexity and ugliness is not worth it. > > > > I disagree. The ABI in a distro is a holy thing. When a Linux distro > > releases their > > libraries (look for example at libvirt), they can't modify it for the next > > 7 years > > (sure they can do it underneath the covers, but look at the Red Hat kernel > > with > > those #ifdef __GENKSYSM__ to work-around this). > > > > I am curious to understand what is complex and ugly about it? Could you be > > more specific please. > > I agree that having a stable binary interface is very important for a > shared library. But if glibc doesn't have versioned structs, why would > these be needed in an iscsi library ? Please keep in mind that it is > possible to define a new version of a shared library in case the ABI > changes.
Yeah. I just thought about that when I sent the e-mail about libvirt. I think that is a good compromise - however we still need the ground-work in place so that this library is built as libiscsi.so.1.0.0 and that the linker saves the version information. I guess this implies that the .spec file needs to be changed to include this file as well. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~----------~----~----~----~------~----~------~--~---