Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Unified Diff: nss/lib/softoken/pkcs11.c

Issue 1504923011: Update NSS to 3.21 RTM and NSPR to 4.11 RTM (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/nss
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: nss/lib/softoken/pkcs11.c
diff --git a/nss/lib/softoken/pkcs11.c b/nss/lib/softoken/pkcs11.c
index 716922f32243e303f8e60b25e05031895b4c51f0..75c9e8e9b5b2d6cbf867f363849cc7b1c6b9f62f 100644
--- a/nss/lib/softoken/pkcs11.c
+++ b/nss/lib/softoken/pkcs11.c
@@ -396,6 +396,7 @@ static const struct mechanismList mechanisms[] = {
{CKM_SHA512_HMAC, {1, 128, CKF_SN_VR}, PR_TRUE},
{CKM_SHA512_HMAC_GENERAL, {1, 128, CKF_SN_VR}, PR_TRUE},
{CKM_TLS_PRF_GENERAL, {0, 512, CKF_SN_VR}, PR_FALSE},
+ {CKM_TLS_MAC, {0, 512, CKF_SN_VR}, PR_FALSE},
{CKM_NSS_TLS_PRF_GENERAL_SHA256,
{0, 512, CKF_SN_VR}, PR_FALSE},
/* ------------------------- HKDF Operations -------------------------- */
@@ -465,14 +466,21 @@ static const struct mechanismList mechanisms[] = {
{CKM_SHA384_KEY_DERIVATION, { 0, 48, CKF_DERIVE}, PR_FALSE},
{CKM_SHA512_KEY_DERIVATION, { 0, 64, CKF_DERIVE}, PR_FALSE},
{CKM_TLS_MASTER_KEY_DERIVE, {48, 48, CKF_DERIVE}, PR_FALSE},
+ {CKM_TLS12_MASTER_KEY_DERIVE, {48, 48, CKF_DERIVE}, PR_FALSE},
{CKM_NSS_TLS_MASTER_KEY_DERIVE_SHA256,
{48, 48, CKF_DERIVE}, PR_FALSE},
{CKM_TLS_MASTER_KEY_DERIVE_DH, {8, 128, CKF_DERIVE}, PR_FALSE},
+ {CKM_TLS12_MASTER_KEY_DERIVE_DH, {8, 128, CKF_DERIVE}, PR_FALSE},
{CKM_NSS_TLS_MASTER_KEY_DERIVE_DH_SHA256,
{8, 128, CKF_DERIVE}, PR_FALSE},
{CKM_TLS_KEY_AND_MAC_DERIVE, {48, 48, CKF_DERIVE}, PR_FALSE},
+ {CKM_TLS12_KEY_AND_MAC_DERIVE, {48, 48, CKF_DERIVE}, PR_FALSE},
{CKM_NSS_TLS_KEY_AND_MAC_DERIVE_SHA256,
{48, 48, CKF_DERIVE}, PR_FALSE},
+ {CKM_NSS_TLS_EXTENDED_MASTER_KEY_DERIVE,
+ {48,128, CKF_DERIVE}, PR_FALSE},
+ {CKM_NSS_TLS_EXTENDED_MASTER_KEY_DERIVE_DH,
+ {48,128, CKF_DERIVE}, PR_FALSE},
/* ---------------------- PBE Key Derivations ------------------------ */
{CKM_PBE_MD2_DES_CBC, {8, 8, CKF_DERIVE}, PR_TRUE},
{CKM_PBE_MD5_DES_CBC, {8, 8, CKF_DERIVE}, PR_TRUE},
@@ -1745,7 +1753,7 @@ NSSLOWKEYPublicKey *sftk_GetPubKey(SFTKObject *object,CK_KEY_TYPE key_type,
crv = sftk_Attribute2SSecItem(arena,&pubKey->u.ec.publicValue,
object,CKA_EC_POINT);
if (crv == CKR_OK) {
- int keyLen,curveLen;
+ unsigned int keyLen,curveLen;
curveLen = (pubKey->u.ec.ecParams.fieldID.size +7)/8;
keyLen = (2*curveLen)+1;
@@ -2220,7 +2228,7 @@ CK_RV C_GetFunctionList(CK_FUNCTION_LIST_PTR *pFunctionList)
static PLHashNumber
sftk_HashNumber(const void *key)
{
- return (PLHashNumber) key;
+ return (PLHashNumber)((char *)key - (char *)NULL);
}
/*
@@ -2601,7 +2609,7 @@ CK_RV sftk_CloseAllSessions(SFTKSlot *slot, PRBool logout)
--slot->sessionCount;
SKIP_AFTER_FORK(PZ_Unlock(slot->slotLock));
if (session->info.flags & CKF_RW_SESSION) {
- PR_ATOMIC_DECREMENT(&slot->rwSessionCount);
+ (void)PR_ATOMIC_DECREMENT(&slot->rwSessionCount);
}
} else {
SKIP_AFTER_FORK(PZ_Unlock(lock));
@@ -2756,7 +2764,7 @@ NSC_ModuleDBFunc(unsigned long function,char *parameters, void *args)
case SECMOD_MODULE_DB_FUNCTION_FIND:
if (secmod == NULL) {
PORT_SetError(SEC_ERROR_INVALID_ARGS);
- return NULL;
+ goto loser;
}
if (rw && (dbType != NSS_DB_TYPE_LEGACY) &&
(dbType != NSS_DB_TYPE_MULTIACCESS)) {
@@ -2799,7 +2807,7 @@ NSC_ModuleDBFunc(unsigned long function,char *parameters, void *args)
case SECMOD_MODULE_DB_FUNCTION_ADD:
if (secmod == NULL) {
PORT_SetError(SEC_ERROR_INVALID_ARGS);
- return NULL;
+ goto loser;
}
rvstr = (sftkdbCall_AddSecmodDB(appName,filename,secmod,
(char *)args,rw) == SECSuccess) ? &success: NULL;
@@ -2807,7 +2815,7 @@ NSC_ModuleDBFunc(unsigned long function,char *parameters, void *args)
case SECMOD_MODULE_DB_FUNCTION_DEL:
if (secmod == NULL) {
PORT_SetError(SEC_ERROR_INVALID_ARGS);
- return NULL;
+ goto loser;
}
rvstr = (sftkdbCall_DeleteSecmodDB(appName,filename,secmod,
(char *)args,rw) == SECSuccess) ? &success: NULL;
@@ -2817,6 +2825,8 @@ NSC_ModuleDBFunc(unsigned long function,char *parameters, void *args)
(char **)args,rw) == SECSuccess) ? &success: NULL;
break;
}
+
+loser:
if (secmod) PR_smprintf_free(secmod);
if (appName) PORT_Free(appName);
if (filename) PORT_Free(filename);
@@ -3138,17 +3148,16 @@ CK_RV NSC_Finalize (CK_VOID_PTR pReserved)
return crv;
}
-extern const char __nss_softokn_rcsid[];
-extern const char __nss_softokn_sccsid[];
+extern const char __nss_softokn_version[];
/* NSC_GetInfo returns general information about Cryptoki. */
CK_RV NSC_GetInfo(CK_INFO_PTR pInfo)
{
- volatile char c; /* force a reference that won't get optimized away */
+#define NSS_VERSION_VARIABLE __nss_softokn_version
+#include "verref.h"
CHECK_FORK();
- c = __nss_softokn_rcsid[0] + __nss_softokn_sccsid[0];
pInfo->cryptokiVersion.major = 2;
pInfo->cryptokiVersion.minor = 20;
PORT_Memcpy(pInfo->manufacturerID,manufacturerID,32);
@@ -3719,7 +3728,7 @@ CK_RV NSC_OpenSession(CK_SLOT_ID slotID, CK_FLAGS flags,
++slot->sessionCount;
PZ_Unlock(slot->slotLock);
if (session->info.flags & CKF_RW_SESSION) {
- PR_ATOMIC_INCREMENT(&slot->rwSessionCount);
+ (void)PR_ATOMIC_INCREMENT(&slot->rwSessionCount);
}
do {
@@ -3787,7 +3796,7 @@ CK_RV NSC_CloseSession(CK_SESSION_HANDLE hSession)
sftk_freeDB(handle);
}
if (session->info.flags & CKF_RW_SESSION) {
- PR_ATOMIC_DECREMENT(&slot->rwSessionCount);
+ (void)PR_ATOMIC_DECREMENT(&slot->rwSessionCount);
}
}
@@ -4005,7 +4014,7 @@ static CK_RV sftk_CreateNewSlot(SFTKSlot *slot, CK_OBJECT_CLASS class,
PRBool isValidFIPSUserSlot = PR_FALSE;
PRBool isValidSlot = PR_FALSE;
PRBool isFIPS = PR_FALSE;
- unsigned long moduleIndex;
+ unsigned long moduleIndex = NSC_NON_FIPS_MODULE;
SFTKAttribute *attribute;
sftk_parameters paramStrings;
char *paramString;
@@ -4514,7 +4523,7 @@ sftk_emailhack(SFTKSlot *slot, SFTKDBHandle *handle,
{
PRBool isCert = PR_FALSE;
int emailIndex = -1;
- int i;
+ unsigned int i;
SFTKSearchResults smime_search;
CK_ATTRIBUTE smime_template[2];
CK_OBJECT_CLASS smime_class = CKO_NETSCAPE_SMIME;

Powered by Google App Engine
This is Rietveld 408576698