Small XMSS nitpicks

Thorsten Glaser t.glaser at
Thu Nov 12 13:01:33 AEDT 2020


the XMSS code doesn’t currently compile. You’ll need this…

--- a/sshkey-xmss.c
+++ b/sshkey-xmss.c
@@ -83,7 +83,7 @@ int    sshkey_xmss_serialize_enc_key(const struct sshkey *, struct sshbuf *);
 int     sshkey_xmss_deserialize_enc_key(struct sshkey *, struct sshbuf *);
 #define PRINT(...) do { if (printerror) sshlog(__FILE__, __func__, __LINE__, \
-    0, SYSLOG_LEVEL_ERROR, __VA_ARGS__); } while (0)
+    0, SYSLOG_LEVEL_ERROR, NULL, __VA_ARGS__); } while (0)
 sshkey_xmss_init(struct sshkey *key, const char *name)

… or, better yet, change all the PRINT macros to drop the
explicit __func__ as well.

Also, you’ll want this applied to xmss*:

--- a/xmss_commons.c
+++ b/xmss_commons.c
@@ -3,7 +3,7 @@
 xmss_commons.c 20160722
 Andreas Hülsing
 Joost Rijneveld
-Public domain.
+CC0, see
 #include "xmss_commons.h"

This relicencing of the reference code, and thus the derivative,
makes XMSS legally distributable in Berne Convention signatories.
(I asked them for this, but they’d already done it ☺)

(gnutls can also be used, but if you are compiling lynx for your own use,
there is no reason to consider using that package)
	-- Thomas E. Dickey on the Lynx mailing list, about OpenSSL

More information about the openssh-unix-dev mailing list