complete the EVP_MD functions doxygen.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@22360 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -254,6 +254,18 @@ EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *md, ENGINE *engine)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the digest with some data.
|
||||||
|
*
|
||||||
|
* @param ctx the context to update
|
||||||
|
* @param data the data to update the context with
|
||||||
|
* @param size length of data
|
||||||
|
*
|
||||||
|
* @return 1 on success.
|
||||||
|
*
|
||||||
|
* @ingroup hcrypto_evp
|
||||||
|
*/
|
||||||
|
|
||||||
int
|
int
|
||||||
EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *data, size_t size)
|
EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *data, size_t size)
|
||||||
{
|
{
|
||||||
@@ -261,6 +273,19 @@ EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *data, size_t size)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Complete the message digest.
|
||||||
|
*
|
||||||
|
* @param ctx the context to complete.
|
||||||
|
* @param hash the output of the message digest function. At least
|
||||||
|
* EVP_MD_size().
|
||||||
|
* @param size the output size of hash.
|
||||||
|
*
|
||||||
|
* @return 1 on success.
|
||||||
|
*
|
||||||
|
* @ingroup hcrypto_evp
|
||||||
|
*/
|
||||||
|
|
||||||
int
|
int
|
||||||
EVP_DigestFinal_ex(EVP_MD_CTX *ctx, void *hash, unsigned int *size)
|
EVP_DigestFinal_ex(EVP_MD_CTX *ctx, void *hash, unsigned int *size)
|
||||||
{
|
{
|
||||||
@@ -270,6 +295,23 @@ EVP_DigestFinal_ex(EVP_MD_CTX *ctx, void *hash, unsigned int *size)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Do the whole EVP_MD_CTX_create(), EVP_DigestInit_ex(),
|
||||||
|
* EVP_DigestUpdate(), EVP_DigestFinal_ex(), EVP_MD_CTX_destroy()
|
||||||
|
* dance in one call.
|
||||||
|
*
|
||||||
|
* @param data the data to update the context with
|
||||||
|
* @param dsize length of data
|
||||||
|
* @param hash output data of at least EVP_MD_size() length.
|
||||||
|
* @param hsize output length of hash.
|
||||||
|
* @param md message digest to use
|
||||||
|
* @param engine engine to use, NULL for default engine.
|
||||||
|
*
|
||||||
|
* @return 1 on success.
|
||||||
|
*
|
||||||
|
* @ingroup hcrypto_evp
|
||||||
|
*/
|
||||||
|
|
||||||
int
|
int
|
||||||
EVP_Digest(const void *data, size_t dsize, void *hash, unsigned int *hsize,
|
EVP_Digest(const void *data, size_t dsize, void *hash, unsigned int *hsize,
|
||||||
const EVP_MD *md, ENGINE *engine)
|
const EVP_MD *md, ENGINE *engine)
|
||||||
@@ -281,20 +323,22 @@ EVP_Digest(const void *data, size_t dsize, void *hash, unsigned int *hsize,
|
|||||||
if (ctx == NULL)
|
if (ctx == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
ret = EVP_DigestInit_ex(ctx, md, engine);
|
ret = EVP_DigestInit_ex(ctx, md, engine);
|
||||||
if (ret != 1)
|
if (ret != 1) {
|
||||||
|
EVP_MD_CTX_destroy(ctx);
|
||||||
return ret;
|
return ret;
|
||||||
|
}
|
||||||
ret = EVP_DigestUpdate(ctx, data, dsize);
|
ret = EVP_DigestUpdate(ctx, data, dsize);
|
||||||
if (ret != 1)
|
if (ret != 1) {
|
||||||
|
EVP_MD_CTX_destroy(ctx);
|
||||||
return ret;
|
return ret;
|
||||||
|
}
|
||||||
ret = EVP_DigestFinal_ex(ctx, hash, hsize);
|
ret = EVP_DigestFinal_ex(ctx, hash, hsize);
|
||||||
if (ret != 1)
|
|
||||||
return ret;
|
|
||||||
EVP_MD_CTX_destroy(ctx);
|
EVP_MD_CTX_destroy(ctx);
|
||||||
return 1;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/**
|
||||||
*
|
* The message digest SHA256
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
@@ -322,18 +366,30 @@ static const struct hc_evp_md sha1 = {
|
|||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The message digest SHA1
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_sha1(void)
|
EVP_sha1(void)
|
||||||
{
|
{
|
||||||
return &sha1;
|
return &sha1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The message digest SHA1
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_sha(void)
|
EVP_sha(void)
|
||||||
{
|
{
|
||||||
return &sha1;
|
return &sha1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The message digest MD5
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_md5(void)
|
EVP_md5(void)
|
||||||
{
|
{
|
||||||
@@ -349,6 +405,10 @@ EVP_md5(void)
|
|||||||
return &md5;
|
return &md5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The message digest MD4
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_md4(void)
|
EVP_md4(void)
|
||||||
{
|
{
|
||||||
@@ -364,6 +424,10 @@ EVP_md4(void)
|
|||||||
return &md4;
|
return &md4;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The message digest MD2
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_md2(void)
|
EVP_md2(void)
|
||||||
{
|
{
|
||||||
@@ -392,10 +456,14 @@ null_Update (void *m, const void * data, size_t size)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
static void
|
static void
|
||||||
null_Final(void *res, struct md5 *m)
|
null_Final(void *res, struct void *m)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The null message digest
|
||||||
|
*/
|
||||||
|
|
||||||
const EVP_MD *
|
const EVP_MD *
|
||||||
EVP_md_null(void)
|
EVP_md_null(void)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user