>>>>> "Mike" == Mike Frysinger <[email protected]> writes:

    Mike> On Friday, September 17, 2010 15:51:35 Michael Plante wrote:
    >> Mike Frysinger wrote: >> then people may make all the changes they
    >> want to the structure >> without disrupting the ABI.
    >> 
    >> But there are libftdi binaries floating around that still do
    >> encourage transparent access to elements of the data structure, and
    >> there are older programs that still touch those.  Even if we now make
    >> the structure opaque, won't moving those elements around break the
    >> older programs?

    Mike> we're already breaking them.  we might as well break them once
    Mike> properly so that the future is stable free.  -mike

For the EEPROM side, what about simple enumerating the available options in
the public header, move struct ftdi_eeprom to a private header and have 
functions 
int res = Get_EEPROM_Value(struct ftdi_context *, char * Option, int * value);
int res = Set_EEPROM_Value(struct ftdi_context *, char * Option, const int 
value);
value);

The Option string is compared against the available options, if no match is
found, an error returned and else the value fetched or set.

A similar thing could be done with user settable options in ftdi_context and
with ftdi_context opaque we should have a stable ABI.

Any thoughts
-- 
Uwe Bonnes                [email protected]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------

--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to [email protected]   

Reply via email to