[BACK]Return to xmss_hash_address.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Annotation of src/usr.bin/ssh/xmss_hash_address.c, Revision 1.2

1.2     ! dtucker     1: /* $OpenBSD$ */
1.1       markus      2: /*
                      3: hash_address.c version 20160722
                      4: Andreas Hülsing
                      5: Joost Rijneveld
                      6: Public domain.
                      7: */
                      8: #include <stdint.h>
                      9: #include "xmss_hash_address.h" /* prototypes */
                     10:
                     11: void setLayerADRS(uint32_t adrs[8], uint32_t layer){
                     12:   adrs[0] = layer;
                     13: }
                     14:
                     15: void setTreeADRS(uint32_t adrs[8], uint64_t tree){
                     16:   adrs[1] = (uint32_t) (tree >> 32);
                     17:   adrs[2] = (uint32_t) tree;
                     18: }
                     19:
                     20: void setType(uint32_t adrs[8], uint32_t type){
                     21:   adrs[3] = type;
                     22:   int i;
                     23:   for(i = 4; i < 8; i++){
                     24:     adrs[i] = 0;
                     25:   }
                     26: }
                     27:
                     28: void setKeyAndMask(uint32_t adrs[8], uint32_t keyAndMask){
                     29:   adrs[7] = keyAndMask;
                     30: }
                     31:
                     32: // OTS
                     33:
                     34: void setOTSADRS(uint32_t adrs[8], uint32_t ots){
                     35:   adrs[4] = ots;
                     36: }
                     37:
                     38: void setChainADRS(uint32_t adrs[8], uint32_t chain){
                     39:   adrs[5] = chain;
                     40: }
                     41:
                     42: void setHashADRS(uint32_t adrs[8], uint32_t hash){
                     43:   adrs[6] = hash;
                     44: }
                     45:
                     46: // L-tree
                     47:
                     48: void setLtreeADRS(uint32_t adrs[8], uint32_t ltree){
                     49:   adrs[4] = ltree;
                     50: }
                     51:
                     52: // Hash Tree & L-tree
                     53:
                     54: void setTreeHeight(uint32_t adrs[8], uint32_t treeHeight){
                     55:   adrs[5] = treeHeight;
                     56: }
                     57:
                     58: void setTreeIndex(uint32_t adrs[8], uint32_t treeIndex){
                     59:   adrs[6] = treeIndex;
                     60: }