1*ffae97bbSchristos /* $NetBSD: xmss_commons.c,v 1.2 2018/04/06 18:59:00 christos Exp $ */
2ad340bdfSchristos /* $OpenBSD: xmss_commons.c,v 1.2 2018/02/26 03:56:44 dtucker Exp $ */
3ad340bdfSchristos /*
4ad340bdfSchristos xmss_commons.c 20160722
5ad340bdfSchristos Andreas Hülsing
6ad340bdfSchristos Joost Rijneveld
7ad340bdfSchristos Public domain.
8ad340bdfSchristos */
9*ffae97bbSchristos #include "includes.h"
10*ffae97bbSchristos __RCSID("$NetBSD: xmss_commons.c,v 1.2 2018/04/06 18:59:00 christos Exp $");
11ad340bdfSchristos
12ad340bdfSchristos #include "xmss_commons.h"
13ad340bdfSchristos #include <stdlib.h>
14ad340bdfSchristos #include <stdio.h>
15ad340bdfSchristos #include <stdint.h>
16ad340bdfSchristos
to_byte(unsigned char * out,unsigned long long in,uint32_t bytes)17ad340bdfSchristos void to_byte(unsigned char *out, unsigned long long in, uint32_t bytes)
18ad340bdfSchristos {
19ad340bdfSchristos int32_t i;
20ad340bdfSchristos for (i = bytes-1; i >= 0; i--) {
21ad340bdfSchristos out[i] = in & 0xff;
22ad340bdfSchristos in = in >> 8;
23ad340bdfSchristos }
24ad340bdfSchristos }
25ad340bdfSchristos
hexdump(const unsigned char * a,size_t len)26ad340bdfSchristos void hexdump(const unsigned char *a, size_t len)
27ad340bdfSchristos {
28ad340bdfSchristos size_t i;
29ad340bdfSchristos for (i = 0; i < len; i++)
30ad340bdfSchristos printf("%02x", a[i]);
31ad340bdfSchristos }
32