>>> A quick question about this configuration... Should Linux-x32 enable >>> ec_nistp_64_gcc_128 by default? Does anything prohibit >>> ec_nistp_64_gcc_128 in this configuration? >>> >>> # ./Configure linux-x32 >>> Configuring OpenSSL version 1.1.0-pre6-dev (0x0x10100006L) >>> no-asan [default] OPENSSL_NO_ASAN (skip dir) >>> ... >>> no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 (skip >>> dir) >>> ... >>> >>> I believe it meets the three criteria for ec_nistp_64_gcc_128. >> >> What are "the three criteria"? I mean I'm not really sure. Nor am I sure >> that they are perfect. I mean maybe they need some adjustment in x32 >> context. To either allow or prevent erroneous compilation. Bottom line >> is that I don't actually know at this point... > > My bad... According to my notes, one can use ec_nistp_64_gcc_128 when > these three conditions are met: > > * Little endian CPU > * CPU allows unaligned data access > * Compiler supports __uint128_t
Correct. But there still might be nuances. For example first two criteria were not actually formulated originally. Upon code submission only __uint128_t requirement was explicitly formulated along with statement that code was developed on x86_64 and therefore tested only on x86_64. The first two criteria were kind of epiphany as result of looking at a compiler warning and realizing that the piece of code in question can possibly work only on little-endian system that tolerates unaligned access. I.e. code was written under this assumption, but it was not explicitly verbalized or maybe even recognized, presumably because it appeared too obvious to original developer. Same in this case, i.e. there *might* as well be some so-far-unverbalized assumption, for example sizeof(long) being 8. Note "might", as I'm not actually saying that there is. All I'm saying is that I don't know [at this point]. -- Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4583 Please log in as guest with password guest if prompted -- openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev