On Wed, Mar 23, 2011 at 2:51 PM, Wes Hardaker <
[email protected]> wrote:
> >>>>> On Wed, 23 Mar 2011 12:12:56 +0100, Bart Van Assche <
> [email protected]> said:
>
> BVA> My two cents: if the ABI or API depends on whether a feature is
> BVA> enabled or disabled, we do no longer have an ABI nor an API. This
> BVA> conflicts with what I have learned about how to define a shared
> BVA> library or DLL ABI or API. So removal of fields from structures or
> BVA> adding/removing arguments to functions should go through the normal
> BVA> mechanism: only make such changes between releases and not in a
> BVA> release itself or via the feature mechanism.
>
> A couple of points:
>
> 1) To some extent, someone using the minimalist support is likely not
> concerned about the ABI/API stability because they're deliberately
> *trying* to remove code (IE, remove ABI/APIs from the standard set).
>
> 2) The only place that we're currently using it in a header file is for
> the statistics support (shortened):
>
> #ifndef NETSNMP_FEATURE_REMOVE_STATISTICS
> u_int snmp_increment_statistic(int which);
> #else /* NETSNMP_FEATURE_REMOVE_STATISTICS */
> /* allow code to continue referencing API */
> #define snmp_increment_statistic(X)
> #endif
>
> In this case, the API is really still there, just implemented as
> macros that do nothing. This is done because it's clearer than doing
> a bunch of #ifdefs in the code itself every time there is a call to
> the similar function.
>
What I'm worried about is that different Linux distributors might configure
Net-SNMP differently (by enabling / disabling different features) and hence
ending up with incompatible ABI's and that for exactly the same Net-SNMP
source code version and shared library version. As far as I know that is
something that is considered unacceptable for shared libraries.
Bart.
------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders