Update error codes.
This commit is contained in:
parent
3aaeb5c1e5
commit
94299a36a6
@ -827,35 +827,36 @@ static DSA_SIG *capi_dsa_do_sign(const unsigned char *digest, int dlen,
|
|||||||
|
|
||||||
if (!capi_key)
|
if (!capi_key)
|
||||||
{
|
{
|
||||||
CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_GET_KEY);
|
CAPIerr(CAPI_F_CAPI_DSA_DO_SIGN, CAPI_R_CANT_GET_KEY);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dlen != 20)
|
if (dlen != 20)
|
||||||
{
|
{
|
||||||
/* Invalid signature length */
|
CAPIerr(CAPI_F_CAPI_DSA_DO_SIGN, CAPI_R_INVALID_DIGEST_LENGTH);
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Create the hash object */
|
/* Create the hash object */
|
||||||
if(!CryptCreateHash(capi_key->hprov, CALG_SHA1, 0, 0, &hash)) {
|
if(!CryptCreateHash(capi_key->hprov, CALG_SHA1, 0, 0, &hash)) {
|
||||||
CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_CREATE_HASH_OBJECT);
|
CAPIerr(CAPI_F_CAPI_DSA_DO_SIGN, CAPI_R_CANT_CREATE_HASH_OBJECT);
|
||||||
capi_addlasterror();
|
capi_addlasterror();
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set the hash value to the value passed */
|
/* Set the hash value to the value passed */
|
||||||
if(!CryptSetHashParam(hash, HP_HASHVAL, (unsigned char *)digest, 0)) {
|
if(!CryptSetHashParam(hash, HP_HASHVAL, (unsigned char *)digest, 0)) {
|
||||||
CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_SET_HASH_VALUE);
|
CAPIerr(CAPI_F_CAPI_DSA_DO_SIGN, CAPI_R_CANT_SET_HASH_VALUE);
|
||||||
capi_addlasterror();
|
capi_addlasterror();
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Finally sign it */
|
/* Finally sign it */
|
||||||
slen = 40;
|
slen = sizeof(csigbuf);
|
||||||
if(!CryptSignHash(hash, AT_SIGNATURE, NULL, 0, csigbuf, &slen))
|
if(!CryptSignHash(hash, AT_SIGNATURE, NULL, 0, csigbuf, &slen))
|
||||||
{
|
{
|
||||||
CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_ERROR_SIGNING_HASH);
|
CAPIerr(CAPI_F_CAPI_DSA_DO_SIGN, CAPI_R_ERROR_SIGNING_HASH);
|
||||||
capi_addlasterror();
|
capi_addlasterror();
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
@ -74,6 +74,7 @@ static ERR_STRING_DATA CAPI_str_functs[]=
|
|||||||
{ERR_FUNC(CAPI_F_CAPI_CTRL), "CAPI_CTRL"},
|
{ERR_FUNC(CAPI_F_CAPI_CTRL), "CAPI_CTRL"},
|
||||||
{ERR_FUNC(CAPI_F_CAPI_CTX_NEW), "CAPI_CTX_NEW"},
|
{ERR_FUNC(CAPI_F_CAPI_CTX_NEW), "CAPI_CTX_NEW"},
|
||||||
{ERR_FUNC(CAPI_F_CAPI_CTX_SET_PROVNAME), "CAPI_CTX_SET_PROVNAME"},
|
{ERR_FUNC(CAPI_F_CAPI_CTX_SET_PROVNAME), "CAPI_CTX_SET_PROVNAME"},
|
||||||
|
{ERR_FUNC(CAPI_F_CAPI_DSA_DO_SIGN), "CAPI_DSA_DO_SIGN"},
|
||||||
{ERR_FUNC(CAPI_F_CAPI_GET_KEY), "CAPI_GET_KEY"},
|
{ERR_FUNC(CAPI_F_CAPI_GET_KEY), "CAPI_GET_KEY"},
|
||||||
{ERR_FUNC(CAPI_F_CAPI_GET_PROVNAME), "CAPI_GET_PROVNAME"},
|
{ERR_FUNC(CAPI_F_CAPI_GET_PROVNAME), "CAPI_GET_PROVNAME"},
|
||||||
{ERR_FUNC(CAPI_F_CAPI_GET_PROV_INFO), "CAPI_GET_PROV_INFO"},
|
{ERR_FUNC(CAPI_F_CAPI_GET_PROV_INFO), "CAPI_GET_PROV_INFO"},
|
||||||
@ -105,6 +106,7 @@ static ERR_STRING_DATA CAPI_str_reasons[]=
|
|||||||
{ERR_REASON(CAPI_R_ERROR_SIGNING_HASH) ,"error signing hash"},
|
{ERR_REASON(CAPI_R_ERROR_SIGNING_HASH) ,"error signing hash"},
|
||||||
{ERR_REASON(CAPI_R_FUNCTION_NOT_SUPPORTED),"function not supported"},
|
{ERR_REASON(CAPI_R_FUNCTION_NOT_SUPPORTED),"function not supported"},
|
||||||
{ERR_REASON(CAPI_R_GETUSERKEY_ERROR) ,"getuserkey error"},
|
{ERR_REASON(CAPI_R_GETUSERKEY_ERROR) ,"getuserkey error"},
|
||||||
|
{ERR_REASON(CAPI_R_INVALID_DIGEST_LENGTH),"invalid digest length"},
|
||||||
{ERR_REASON(CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER),"invalid dsa public key blob magic number"},
|
{ERR_REASON(CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER),"invalid dsa public key blob magic number"},
|
||||||
{ERR_REASON(CAPI_R_INVALID_LOOKUP_METHOD),"invalid lookup method"},
|
{ERR_REASON(CAPI_R_INVALID_LOOKUP_METHOD),"invalid lookup method"},
|
||||||
{ERR_REASON(CAPI_R_INVALID_PUBLIC_KEY_BLOB),"invalid public key blob"},
|
{ERR_REASON(CAPI_R_INVALID_PUBLIC_KEY_BLOB),"invalid public key blob"},
|
||||||
|
@ -71,6 +71,7 @@ static void ERR_CAPI_error(int function, int reason, char *file, int line);
|
|||||||
#define CAPI_F_CAPI_CTRL 100
|
#define CAPI_F_CAPI_CTRL 100
|
||||||
#define CAPI_F_CAPI_CTX_NEW 101
|
#define CAPI_F_CAPI_CTX_NEW 101
|
||||||
#define CAPI_F_CAPI_CTX_SET_PROVNAME 102
|
#define CAPI_F_CAPI_CTX_SET_PROVNAME 102
|
||||||
|
#define CAPI_F_CAPI_DSA_DO_SIGN 114
|
||||||
#define CAPI_F_CAPI_GET_KEY 103
|
#define CAPI_F_CAPI_GET_KEY 103
|
||||||
#define CAPI_F_CAPI_GET_PROVNAME 104
|
#define CAPI_F_CAPI_GET_PROVNAME 104
|
||||||
#define CAPI_F_CAPI_GET_PROV_INFO 105
|
#define CAPI_F_CAPI_GET_PROV_INFO 105
|
||||||
@ -99,6 +100,7 @@ static void ERR_CAPI_error(int function, int reason, char *file, int line);
|
|||||||
#define CAPI_R_ERROR_SIGNING_HASH 111
|
#define CAPI_R_ERROR_SIGNING_HASH 111
|
||||||
#define CAPI_R_FUNCTION_NOT_SUPPORTED 112
|
#define CAPI_R_FUNCTION_NOT_SUPPORTED 112
|
||||||
#define CAPI_R_GETUSERKEY_ERROR 113
|
#define CAPI_R_GETUSERKEY_ERROR 113
|
||||||
|
#define CAPI_R_INVALID_DIGEST_LENGTH 124
|
||||||
#define CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 122
|
#define CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 122
|
||||||
#define CAPI_R_INVALID_LOOKUP_METHOD 114
|
#define CAPI_R_INVALID_LOOKUP_METHOD 114
|
||||||
#define CAPI_R_INVALID_PUBLIC_KEY_BLOB 115
|
#define CAPI_R_INVALID_PUBLIC_KEY_BLOB 115
|
||||||
|
Loading…
x
Reference in New Issue
Block a user