Fix C-warnings (#10)
* .envrc is not for git * Fix c code - avoid warnings * Bump Erlang versions in Github workflows
This commit is contained in:
+2
-3
@@ -54,9 +54,8 @@ static int enacl_crypto_upgrade(ErlNifEnv* env, void **priv_data,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int enacl_crypto_unload(ErlNifEnv* env, void **priv_data,
|
||||
ERL_NIF_TERM load_info) {
|
||||
return 0;
|
||||
static void enacl_crypto_unload(ErlNifEnv* env, void *priv_data) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* GENERAL ROUTINES
|
||||
|
||||
@@ -221,7 +221,6 @@ ERL_NIF_TERM enacl_crypto_generichash_update(ErlNifEnv *env, int argc,
|
||||
ERL_NIF_TERM const argv[]) {
|
||||
ERL_NIF_TERM ret;
|
||||
ErlNifBinary data;
|
||||
unsigned int data_size;
|
||||
enacl_generichash_ctx *obj = NULL;
|
||||
|
||||
// Validate the arguments
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ ERL_NIF_TERM enacl_crypto_kdf_CONTEXTBYTES(ErlNifEnv *env, int argc,
|
||||
ERL_NIF_TERM enacl_crypto_kdf_derive_from_key(ErlNifEnv *env, int argc,
|
||||
ERL_NIF_TERM const argv[]) {
|
||||
ErlNifBinary m, c, r;
|
||||
uint64_t id;
|
||||
ErlNifUInt64 id;
|
||||
|
||||
// Validate the arguments
|
||||
if ((argc != 3) ||
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ ERL_NIF_TERM enacl_crypto_box(ErlNifEnv *env, int argc,
|
||||
goto bad_arg;
|
||||
|
||||
if (!enif_alloc_binary(padded_msg.size, &result)) {
|
||||
goto done;
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (0 != crypto_box(result.data, padded_msg.data, padded_msg.size, nonce.data,
|
||||
|
||||
@@ -227,11 +227,13 @@ ERL_NIF_TERM enacl_crypto_secretstream_xchacha20poly1305_init_pull(
|
||||
obj->state = enif_alloc(crypto_secretstream_xchacha20poly1305_statebytes());
|
||||
|
||||
if (obj->state == NULL) {
|
||||
ret = enacl_internal_error(env);
|
||||
goto release;
|
||||
}
|
||||
obj->alive = 1;
|
||||
|
||||
if ((obj->mtx = enif_mutex_create("enacl.secretstream")) == NULL) {
|
||||
ret = enacl_internal_error(env);
|
||||
goto free;
|
||||
}
|
||||
|
||||
|
||||
+5
-1
@@ -62,6 +62,7 @@ ERL_NIF_TERM enacl_crypto_sign_init(ErlNifEnv *env, int argc,
|
||||
obj->alive = 0;
|
||||
obj->state = enif_alloc(crypto_sign_statebytes());
|
||||
if (obj->state == NULL) {
|
||||
ret = enacl_internal_error(env);
|
||||
goto release;
|
||||
}
|
||||
obj->alive = 1;
|
||||
@@ -82,6 +83,7 @@ ERL_NIF_TERM enacl_crypto_sign_init(ErlNifEnv *env, int argc,
|
||||
bad_arg:
|
||||
return enif_make_badarg(env);
|
||||
free:
|
||||
ret = enacl_internal_error(env);
|
||||
if (obj->alive)
|
||||
if (obj->state != NULL) {
|
||||
sodium_memzero(obj->state, crypto_sign_statebytes());
|
||||
@@ -285,7 +287,9 @@ enacl_crypto_sign_ed25519_public_to_curve25519(ErlNifEnv *env, int argc,
|
||||
return enacl_internal_error(env);
|
||||
}
|
||||
|
||||
crypto_sign_ed25519_pk_to_curve25519(curve25519_pk.data, ed25519_pk.data);
|
||||
if (crypto_sign_ed25519_pk_to_curve25519(curve25519_pk.data, ed25519_pk.data) != 0) {
|
||||
return enacl_internal_error(env);
|
||||
}
|
||||
|
||||
return enif_make_binary(env, &curve25519_pk);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user