Commit a52d5d53 authored by Nick Mathewson's avatar Nick Mathewson 🎨
Browse files

Refactor initialization in curve25519_basepoint_spot_check

This is an attempt to work around what I think may be a bug in
OSS-Fuzz, which thinks that uninitialized data might be passed to
the curve25519 functions.
parent 776c1a5d
......@@ -291,12 +291,18 @@ curve25519_basepoint_spot_check(void)
const int loop_max=200;
int save_use_ed = curve25519_use_ed;
unsigned char e1[32] = { 5 };
unsigned char e2[32] = { 5 };
unsigned char e1[32], e2[32];
unsigned char x[32],y[32];
int i;
int r=0;
memset(x, 0, sizeof(x));
memset(y, 0, sizeof(y));
memset(e1, 0, sizeof(e1));
memset(e2, 0, sizeof(e2));
/* Check the most basic possible sanity via the test secret/public key pair
* used in "Cryptography in NaCl - 2. Secret keys and public keys". This
* may catch catastrophic failures on systems where Curve25519 is expensive,
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment