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ørgravvoid 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