You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
r and a may point to the same object, but neither can be equal to b. (...)
*/
static void secp256k1_fe_mul(secp256k1_fe *r, const secp256k1_fe *a, const secp256k1_fe *b);
The idea is that we could have three enforcement levels:
do not care at all (current default). This assumes, that all memory is distinct. I.e read a[0] after writing r[0] is fine.
level 2: assume that r and a can be equal, but must be aligned. then, writing to r[0] and subsequently reading from a[1] is valid. Reading a[0] after writing r[0] would be invalid.
level 3: do not read any memory after writing any. (except for stack). I.e. there cannot be any reads after the first write, expect if the read is from the stack.
The text was updated successfully, but these errors were encountered:
re bitcoin-core/secp256k1#1329 (comment)
The idea is that we could have three enforcement levels:
a[0]
after writingr[0]
is fine.r
anda
can be equal, but must be aligned. then, writing to r[0] and subsequently reading froma[1]
is valid. Readinga[0]
after writingr[0]
would be invalid.The text was updated successfully, but these errors were encountered: