/** * public static native int BN_nnmod(int, int, int, int) */ static jboolean NativeBN_BN_nnmod(JNIEnv* env, jclass cls, BIGNUM* r, BIGNUM* a, BIGNUM* m, BN_CTX* ctx) { if (!threeValidHandles(env, r, a, m)) return FALSE; return BN_nnmod(r, a, m, ctx); }
/** * public static native int BN_sub(int, int, int) */ static jboolean NativeBN_BN_sub(JNIEnv* env, jclass cls, BIGNUM* r, BIGNUM* a, BIGNUM* b) { if (!threeValidHandles(env, r, a, b)) return FALSE; return BN_sub(r, a, b); }
/** * public static native int BN_exp(int, int, int, int) */ static jboolean NativeBN_BN_exp(JNIEnv* env, jclass cls, BIGNUM* r, BIGNUM* a, BIGNUM* p, BN_CTX* ctx) { if (!threeValidHandles(env, r, a, p)) return FALSE; return BN_exp(r, a, p, ctx); }
static jboolean NativeBN_BN_mod_inverse(JNIEnv* env, jclass, BIGNUM* ret, BIGNUM* a, BIGNUM* n) { if (!threeValidHandles(env, ret, a, n)) return JNI_FALSE; Unique_BN_CTX ctx(BN_CTX_new()); return (BN_mod_inverse(ret, a, n, ctx.get()) != NULL); }
static int fourValidHandles (JNIEnv* env, void* a, void *b, void* c, void* d) { if (!threeValidHandles(env, a, b, c)) return FALSE; return isValidHandle(env, d, "Mandatory handle (fourth) passed as null"); }
static jboolean NativeBN_BN_nnmod(JNIEnv* env, jclass, BIGNUM* r, BIGNUM* a, BIGNUM* m) { if (!threeValidHandles(env, r, a, m)) return JNI_FALSE; Unique_BN_CTX ctx(BN_CTX_new()); return BN_nnmod(r, a, m, ctx.get()); }
static int fourValidHandles(JNIEnv* env, jlong a, jlong b, jlong c, jlong d) { if (!threeValidHandles(env, a, b, c)) return JNI_FALSE; return isValidHandle(env, d, "Mandatory handle (fourth) passed as null"); }
extern "C" void Java_java_math_NativeBN_BN_1mod_1inverse(JNIEnv* env, jclass, jlong ret, jlong a, jlong n) { if (!threeValidHandles(env, ret, a, n)) return; Unique_BN_CTX ctx(BN_CTX_new()); BN_mod_inverse(toBigNum(ret), toBigNum(a), toBigNum(n), ctx.get()); throwExceptionIfNecessary(env); }
extern "C" void Java_java_math_NativeBN_BN_1nnmod(JNIEnv* env, jclass, jlong r, jlong a, jlong m) { if (!threeValidHandles(env, r, a, m)) return; Unique_BN_CTX ctx(BN_CTX_new()); BN_nnmod(toBigNum(r), toBigNum(a), toBigNum(m), ctx.get()); throwExceptionIfNecessary(env); }
extern "C" void Java_java_math_NativeBN_BN_1sub(JNIEnv* env, jclass, jlong r, jlong a, jlong b) { if (!threeValidHandles(env, r, a, b)) return; BN_sub(toBigNum(r), toBigNum(a), toBigNum(b)); throwExceptionIfNecessary(env); }