mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-01-28 02:52:21 +01:00
When the same table is used for both base point and public point (which is not a valid thing to do) then a corner case occurs when the table point can be added to the same point. This has to be a double operation instead. The table point isn't able to be doubled as it has a z-ordinate of 0 and the original point is overwritten with the invalid add result. Fix this case by: - copying the table point into the result, - setting z-ordinate to Montgomery form of 1, - double the result point in place.