Skip to content

Commit

Permalink
FIX: more compile issues
Browse files Browse the repository at this point in the history
  • Loading branch information
reneme committed Aug 24, 2023
1 parent 330d4fc commit 233af23
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
12 changes: 6 additions & 6 deletions src/lib/pubkey/frodokem/frodo_matrix.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ FrodoMatrix FrodoMatrix::mul_add_sa_plus_e(const FrodoKEMConstants& constants,
sizeof(uint16_t) * a_row_data.size());

// Start matrix multiplication
for(unsigned int i = 0; i < constants.n(); i += 8) {
for(uint16_t i = 0; i < constants.n(); i += 8) {
auto a_row = BufferStuffer(a_row_data_bytes);

//Do 8 invocations to fill 8 rows
Expand All @@ -224,15 +224,15 @@ FrodoMatrix FrodoMatrix::mul_add_sa_plus_e(const FrodoKEMConstants& constants,

row_generator(a_row.next(sizeof(uint16_t) * constants.n()), i + 7);

for(unsigned int j = 0; j < constants.n_bar(); ++j) {
for(uint16_t j = 0; j < constants.n_bar(); ++j) {
uint16_t sum = 0;
int16_t sp[8];
for(unsigned int p = 0; p < 8; ++p) {
for(uint16_t p = 0; p < 8; ++p) {
sp[p] = s.elements_at(j * constants.n() + i + p);
}
for(unsigned int q = 0; q < constants.n(); ++q) {
for(uint16_t q = 0; q < constants.n(); ++q) {
sum = elements.at(j * constants.n() + q);
for(unsigned int p = 0; p < 8; ++p) {
for(uint16_t p = 0; p < 8; ++p) {
sum += sp[p] * a_row_data.at(p * constants.n() + q);
}
elements.at(j * constants.n() + q) = sum;
Expand Down Expand Up @@ -395,7 +395,7 @@ void FrodoMatrix::pack(const FrodoKEMConstants& constants, StrongSpan<FrodoPacke
*/
uint8_t b = 0; // bits in out[i] already filled in
while(b < 8) {
int nbits = std::min(static_cast<uint8_t>(8 - b), bits);
const auto nbits = std::min(static_cast<uint8_t>(8 - b), bits);
const uint16_t mask = (1 << nbits) - 1;
const auto t = static_cast<uint8_t>((w >> (bits - nbits)) & mask); // the bits to copy from w to out
out[i] = out[i] + (t << (8 - b - nbits));
Expand Down
2 changes: 1 addition & 1 deletion src/lib/pubkey/frodokem/frodo_mode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ std::string FrodoKEMMode::to_string() const {
BOTAN_ASSERT_UNREACHABLE();
}

FrodoKEMConstants::FrodoKEMConstants(const FrodoKEMMode mode) : m_mode(mode) {
FrodoKEMConstants::FrodoKEMConstants(FrodoKEMMode mode) : m_mode(mode) {
//Common for all parameter sets:
m_n_bar = 8;
m_len_a = 128;
Expand Down
1 change: 1 addition & 0 deletions src/lib/pubkey/frodokem/frodokem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,7 @@ FrodoKEM_PublicKey::FrodoKEM_PublicKey(std::span<const uint8_t> pub_key, FrodoKE
}

FrodoKEM_PublicKey::FrodoKEM_PublicKey(const AlgorithmIdentifier& alg_id, std::span<const uint8_t> key_bits) {
BOTAN_UNUSED(alg_id, key_bits);
throw Not_Implemented("NYI");
}

Expand Down

0 comments on commit 233af23

Please sign in to comment.