Skip to content

Commit

Permalink
Bug 1526336, Implement new HASH_GetHashOidTagByHashType, r=rrelyea
Browse files Browse the repository at this point in the history
  • Loading branch information
kaie committed Feb 8, 2019
1 parent 3aca1fb commit 3acd98c
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 1 deletion.
34 changes: 33 additions & 1 deletion lib/cryptohi/sechash.c
Expand Up @@ -202,13 +202,45 @@ HASH_GetHashTypeByOidTag(SECOidTag hashOid)
ht = HASH_AlgSHA512;
break;
default:
ht = HASH_AlgNULL;
PORT_SetError(SEC_ERROR_INVALID_ALGORITHM);
break;
}
return ht;
}

HASH_GetHashOidTagByHashType(HASH_HashType type)
{
SECOidTag oid = SEC_OID_UNKNOWN;

switch (type) {
case HASH_AlgMD2:
oid = SEC_OID_MD2;
break;
case HASH_AlgMD5:
oid = SEC_OID_MD5;
break;
case HASH_AlgSHA1:
oid = SEC_OID_SHA1;
break;
case HASH_AlgSHA224:
oid = SEC_OID_SHA224;
break;
case HASH_AlgSHA256:
oid = SEC_OID_SHA256;
break;
case HASH_AlgSHA384:
oid = SEC_OID_SHA384;
break;
case HASH_AlgSHA512:
oid = SEC_OID_SHA512;
break;
default:
PORT_SetError(SEC_ERROR_INVALID_ALGORITHM);
break;
}
return oid;
}

SECOidTag
HASH_GetHashOidTagByHMACOidTag(SECOidTag hmacOid)
{
Expand Down
2 changes: 2 additions & 0 deletions lib/cryptohi/sechash.h
Expand Up @@ -53,6 +53,8 @@ extern HASH_HashType HASH_GetHashTypeByOidTag(SECOidTag hashOid);
extern SECOidTag HASH_GetHashOidTagByHMACOidTag(SECOidTag hmacOid);
extern SECOidTag HASH_GetHMACOidTagByHashOidTag(SECOidTag hashOid);

extern SECOidTag HASH_GetHashOidTagByHashType(HASH_HashType type);

SEC_END_PROTOS

#endif /* _HASH_H_ */
6 changes: 6 additions & 0 deletions lib/nss/nss.def
Expand Up @@ -1139,3 +1139,9 @@ CERT_GetCertKeyType;
;+ local:
;+ *;
;+};
;+NSS_3.43 { # NSS 3.43 release
;+ global:
HASH_GetHashOidTagByHashType;
;+ local:
;+ *;
;+};

0 comments on commit 3acd98c

Please sign in to comment.