xref: /freebsd/crypto/openssh/xmss_commons.c (revision 19261079)
1*47dd1d1bSDag-Erling Smørgrav /* $OpenBSD: xmss_commons.c,v 1.2 2018/02/26 03:56:44 dtucker Exp $ */
2*47dd1d1bSDag-Erling Smørgrav /*
3*47dd1d1bSDag-Erling Smørgrav xmss_commons.c 20160722
4*47dd1d1bSDag-Erling Smørgrav Andreas Hülsing
5*47dd1d1bSDag-Erling Smørgrav Joost Rijneveld
6*47dd1d1bSDag-Erling Smørgrav Public domain.
7*47dd1d1bSDag-Erling Smørgrav */
8*47dd1d1bSDag-Erling Smørgrav 
9*47dd1d1bSDag-Erling Smørgrav #include "includes.h"
10*47dd1d1bSDag-Erling Smørgrav #ifdef WITH_XMSS
11*47dd1d1bSDag-Erling Smørgrav 
12*47dd1d1bSDag-Erling Smørgrav #include "xmss_commons.h"
13*47dd1d1bSDag-Erling Smørgrav #include <stdlib.h>
14*47dd1d1bSDag-Erling Smørgrav #include <stdio.h>
15*47dd1d1bSDag-Erling Smørgrav #ifdef HAVE_STDINT_H
16*47dd1d1bSDag-Erling Smørgrav # include <stdint.h>
17*47dd1d1bSDag-Erling Smørgrav #endif
18*47dd1d1bSDag-Erling Smørgrav 
to_byte(unsigned char * out,unsigned long long in,uint32_t bytes)19*47dd1d1bSDag-Erling Smørgrav void to_byte(unsigned char *out, unsigned long long in, uint32_t bytes)
20*47dd1d1bSDag-Erling Smørgrav {
21*47dd1d1bSDag-Erling Smørgrav   int32_t i;
22*47dd1d1bSDag-Erling Smørgrav   for (i = bytes-1; i >= 0; i--) {
23*47dd1d1bSDag-Erling Smørgrav     out[i] = in & 0xff;
24*47dd1d1bSDag-Erling Smørgrav     in = in >> 8;
25*47dd1d1bSDag-Erling Smørgrav   }
26*47dd1d1bSDag-Erling Smørgrav }
27*47dd1d1bSDag-Erling Smørgrav 
28*47dd1d1bSDag-Erling Smørgrav #if 0
29*47dd1d1bSDag-Erling Smørgrav void hexdump(const unsigned char *a, size_t len)
30*47dd1d1bSDag-Erling Smørgrav {
31*47dd1d1bSDag-Erling Smørgrav   size_t i;
32*47dd1d1bSDag-Erling Smørgrav   for (i = 0; i < len; i++)
33*47dd1d1bSDag-Erling Smørgrav     printf("%02x", a[i]);
34*47dd1d1bSDag-Erling Smørgrav }
35*47dd1d1bSDag-Erling Smørgrav #endif
36*47dd1d1bSDag-Erling Smørgrav #endif /* WITH_XMSS */
37