On Mon, Jan 28, 2019 at 07:10:55AM +0100, Richard Levitte wrote: > On Mon, 28 Jan 2019 06:17:35 +0100, > Dr Paul Dale wrote: > > Richard wrote: > > > > Not really, since they are static inline. This is by design, that for > > any file you want to use > > a safestack in, you just start with a DEFINE_ line. The mistake we did > > was to leave a few > > common ones in the safestack header file. (same thing for lhash) > > > > Which means we’ve a compatibility issue. The functions are in a public > > header, they can be used > > by any application. We need to continue supporting such use. > > Asking a user to add a DEFINE_ line is API breaking. > > > > I would be pro making such a change but we’d need to accept the > > consequences. > > We have to accept consequences either way, either: > > 1. the surprise breakage if someone includes <openssl/safestack.h> but > doesn't link with libcrypto, while compiling with > -fkeep-inline-functions (explicitly or implicitly, depending on the > compiler)
This one is only "surprising and new" the first time a user/project tries to turn on -fkeep-inline-functions. > 2. The controlled and documented change / breakage that they will have > to either add those DEFINE lines where they need the functionality, > or include another header file with common stack / lhash type > implementations (with the caveat that they MUST link with libcrypto > if they use those headers) This one is "surprising and new" to everyone using the stuff (i.e., more people). -Ben _______________________________________________ openssl-project mailing list openssl-project@openssl.org https://mta.openssl.org/mailman/listinfo/openssl-project