version 1.2, 2014/02/02 03:44:31 |
version 1.3, 2014/02/23 20:03:42 |
|
|
|
|
#include "crypto_api.h" |
#include "crypto_api.h" |
|
|
|
#include <limits.h> |
#include <string.h> |
#include <string.h> |
#include <stdarg.h> |
#include <stdarg.h> |
|
|
|
|
if (key == NULL || key_type_plain(key->type) != KEY_ED25519 || |
if (key == NULL || key_type_plain(key->type) != KEY_ED25519 || |
key->ed25519_sk == NULL) { |
key->ed25519_sk == NULL) { |
error("%s: no ED25519 key", __func__); |
error("%s: no ED25519 key", __func__); |
|
return -1; |
|
} |
|
|
|
if (datalen >= UINT_MAX - crypto_sign_ed25519_BYTES) { |
|
error("%s: datalen %u too long", __func__, datalen); |
return -1; |
return -1; |
} |
} |
smlen = slen = datalen + crypto_sign_ed25519_BYTES; |
smlen = slen = datalen + crypto_sign_ed25519_BYTES; |