Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: mail/sendmail not relaying on netbsd-9/sparc, problem with OpenSSL update?



On Thu, 8 Apr 2021, RVP wrote:

> As a workaround, until the offending opcode is found, try
> `#undef GHASH_ASM_SPARC' on line 692 in
> src/crypto/external/bsd/openssl/dist/crypto/modes/gcm128.c to force
> use of the C functions.

A diff of "gcm128c" between -current and netbsd-9 before the pullup
shows:

[...]
-#  if defined(__arch64__)
-#   define GHASH_ASM_SPARC
-#   define GCM_FUNCREF_4BIT
+#  define GHASH_ASM_SPARC
+#  define GCM_FUNCREF_4BIT
 extern unsigned int OPENSSL_sparcv9cap_P[];
 void gcm_init_vis3(u128 Htable[16], const u64 Xi[2]);
 void gcm_gmult_vis3(u64 Xi[2], const u128 Htable[16]);
 void gcm_ghash_vis3(u64 Xi[2], const u128 Htable[16], const u8 *inp,
                     size_t len);
-#  endif
[...]

That is, before the pull-up of OpenSSL 1.1.1k, the "GHASH_ASM_SPARC"
macro was conditionally defined iff "__arch64__" was also defined--
likely an internal compiler definition.

With -current and netbsd-9 after the pull up, that conditionalization
has been removed.  The supplied assembly code (wrapped in a perl
script) implies by filename that it is for sparcv9 and up CPUs.

Alas I don't know sparc assembly, so I will have to defer to others
whether it can be rendered harmless for sparcv8 and prior CPUs.

Or just reinstate the above conditionalization.

-- 
|/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
|\ / jdbaker[snail]consolidated[flyspeck]net  OpenBSD            FreeBSD
| X  No HTML/proprietary data in email.   BSD just sits there and works!
|/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645


Home | Main Index | Thread Index | Old Index