Handle inputs/outputs and nulls correctly.

This commit is contained in:
kngako
2024-08-07 02:48:25 +02:00
parent 23739e13a8
commit 86d7d9835f
6 changed files with 123 additions and 62 deletions

View File

@@ -264,9 +264,10 @@ public class Secp256k1CFunctions {
* this function returns 0. For uniformly random 32-byte arrays the
* chance of being invalid is negligible (around 1 in 2^128).
*
* @return output_pubkey: pointer to a public key to store the result. Will be set
* to an invalid value if this function returns 0. If you
* do not need it, this arg can be NULL.
* @return
* [0] output_pubkey: pointer to a public key to store the result. Will be set to an invalid value if this
* function returns 0. If you do not need it, this arg can be NULL.
* [1] tweak_cache: pointer to a `frost_tweak_cache` struct initialized by `frost_pubkey_tweak`
*/
public static native byte[][] secp256k1_frost_pubkey_xonly_tweak_add(long ctx, byte[] tweakCache, byte[] tweak32);
@@ -348,7 +349,7 @@ public class Secp256k1CFunctions {
* @param tweak_cache pointer to frost_tweak_cache struct (can be NULL)
*
* @return
* pointer to struct to store the partial signature
* partial_sig: pointer to struct to store the partial signature
* TODO: [1] secnonce: pointer to the secnonce struct created in frost_nonce_gen that has been never used in a
* partial_sign call before
*
@@ -377,6 +378,7 @@ public class Secp256k1CFunctions {
* `secp256k1_frost_compute_pubshare`
* @param session pointer to the session that was created with `frost_nonce_process`
* @param tweakCache pointer to frost_tweak_cache struct (can be NULL)
*
* @return 0 if the arguments are invalid or the partial signature does not verify, 1 otherwise
*/
public static native int secp256k1_frost_partial_sig_verify(long ctx, byte[] partialSig, byte[] publicNonce, byte[] publicShare, byte[] session, byte[] tweakCache);