src/crypto/p224.cc
// Put224Bits performs the inverse operation to Get224Bits: taking 28 bits from
// each of 8 input words and writing them in big-endian order to 7 words at
// out.
Put224Bits performs the inverse operation to Get224Bits: taking 28 bits from
each of 8 input words and writing them in big-endian order to 7 words at
out.
Put224Bits performs the inverse operation to Get224Bits : taking 28 bits from each of 8 input words and writing them in big - endian order to 7 words at out .
void Put224Bits(uint32_t* out, const uint32_t* in) {
  out[6] = HostToNet32((in[0] >> 0) | (in[1] << 28));
  out[5] = HostToNet32((in[1] >> 4) | (in[2] << 24));
  out[4] = HostToNet32((in[2] >> 8) | (in[3] << 20));
  out[3] = HostToNet32((in[3] >> 12) | (in[4] << 16));
  out[2] = HostToNet32((in[4] >> 16) | (in[5] << 12));
  out[1] = HostToNet32((in[5] >> 20) | (in[6] << 8));
  out[0] = HostToNet32((in[6] >> 24) | (in[7] << 4));
}
void Put224Bits ( uint32_t * out , const uint32_t * in ) { out [ 6 ] = HostToNet32 ( ( in [ 0 ] >> 0 ) | ( in [ 1 ] << 28 ) ) ; out [ 5 ] = HostToNet32 ( ( in [ 1 ] >> 4 ) | ( in [ 2 ] << 24 ) ) ; out [ 4 ] = HostToNet32 ( ( in [ 2 ] >> 8 ) | ( in [ 3 ] << 20 ) ) ; out [ 3 ] = HostToNet32 ( ( in [ 3 ] >> 12 ) | ( in [ 4 ] << 16 ) ) ; out [ 2 ] = HostToNet32 ( ( in [ 4 ] >> 16 ) | ( in [ 5 ] << 12 ) ) ; out [ 1 ] = HostToNet32 ( ( in [ 5 ] >> 20 ) | ( in [ 6 ] << 8 ) ) ; out [ 0 ] = HostToNet32 ( ( in [ 6 ] >> 24 ) | ( in [ 7 ] << 4 ) ) ; }
Put224Bits performs the inverse operation to Get224Bits: taking 28 bits from
each of 8 input words and writing them in big-endian order to 7 words at
out.
Put224Bits performs the inverse operation to Get224Bits : taking 28 bits from each of 8 input words and writing them in big - endian order to 7 words at out .