We don't have a formal policy of no NULL checks - we just have a few members that think we should have such a policy but it has never been voted on as we had sufficiently varying views for a consensus approach to not be possible.
Personally I'm in favour of high-level APIs having NULL checks as it (in my experience) leads to less bogus error crash reports from users and simpler handling in error cleanup logic. Otherwise you end up writing a whole pile of if(x!=NULL) FOO_free(x); etc But it is a style issue. However in the context of removing such checks - that we should *not* be doing - the behaviour of the APIs in this area should not be changed outside of a major version increment - and even then I would not make the change either because it introduces changes which in themselves serve no real purpose - i.e. a style change can result in making a program that used to work fine crash in bad ways - and that we shouldn't be doing even across major version increments in my view. Tim. On Wed, Aug 8, 2018 at 8:08 PM, Matt Caswell <[email protected]> wrote: > We've had a policy for a while of not requiring NULL checks in > functions. However there is a difference between not adding them for new > functions and actively removing them for old ones. > > See https://github.com/openssl/openssl/pull/6893 > > In this case the removal of a NULL check in the stack code had the > unintended consequence of a crash in a no-comp build. Is it wise to be > actively removing existing NULL checks like this? It does have an impact > on the behaviour of a function (even if that behaviour is undocumented > and not encouraged). The concern I have is for our API/ABI compatibility > guarantee. If we make changes like this then 1.1.1 may no longer be a > drop in replacement for 1.1.0 for some apps. > > Matt > > _______________________________________________ > openssl-project mailing list > [email protected] > https://mta.openssl.org/mailman/listinfo/openssl-project >
_______________________________________________ openssl-project mailing list [email protected] https://mta.openssl.org/mailman/listinfo/openssl-project
