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

Side by Side Diff: nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_publickey.c

Issue 1155223003: Uprev NSS from 3.18.0 RTM to 3.19.0 RTM (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/nss
Patch Set: *cough* Created 5 years, 6 months 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_httpdefaultclient.c ('k') | nss/lib/nss/nss.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* This Source Code Form is subject to the terms of the Mozilla Public 1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this 2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4 /* 4 /*
5 * pkix_pl_publickey.c 5 * pkix_pl_publickey.c
6 * 6 *
7 * Certificate Object Functions 7 * Certificate Object Functions
8 * 8 *
9 */ 9 */
10 10
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 PKIX_UInt32 *pHashcode, 204 PKIX_UInt32 *pHashcode,
205 void *plContext) 205 void *plContext)
206 { 206 {
207 PKIX_PL_PublicKey *pkixPubKey = NULL; 207 PKIX_PL_PublicKey *pkixPubKey = NULL;
208 SECItem algOID; 208 SECItem algOID;
209 SECItem algParams; 209 SECItem algParams;
210 SECItem nssPubKey; 210 SECItem nssPubKey;
211 PKIX_UInt32 algOIDHash; 211 PKIX_UInt32 algOIDHash;
212 PKIX_UInt32 algParamsHash; 212 PKIX_UInt32 algParamsHash;
213 PKIX_UInt32 pubKeyHash; 213 PKIX_UInt32 pubKeyHash;
214 PKIX_UInt32 fullHash;
215 214
216 PKIX_ENTER(PUBLICKEY, "pkix_pl_PublicKey_Hashcode"); 215 PKIX_ENTER(PUBLICKEY, "pkix_pl_PublicKey_Hashcode");
217 PKIX_NULLCHECK_TWO(object, pHashcode); 216 PKIX_NULLCHECK_TWO(object, pHashcode);
218 217
219 PKIX_CHECK(pkix_CheckType(object, PKIX_PUBLICKEY_TYPE, plContext), 218 PKIX_CHECK(pkix_CheckType(object, PKIX_PUBLICKEY_TYPE, plContext),
220 PKIX_OBJECTNOTPUBLICKEY); 219 PKIX_OBJECTNOTPUBLICKEY);
221 220
222 pkixPubKey = (PKIX_PL_PublicKey *)object; 221 pkixPubKey = (PKIX_PL_PublicKey *)object;
223 222
224 PKIX_NULLCHECK_ONE(pkixPubKey->nssSPKI); 223 PKIX_NULLCHECK_ONE(pkixPubKey->nssSPKI);
225 224
226 algOID = pkixPubKey->nssSPKI->algorithm.algorithm; 225 algOID = pkixPubKey->nssSPKI->algorithm.algorithm;
227 algParams = pkixPubKey->nssSPKI->algorithm.parameters; 226 algParams = pkixPubKey->nssSPKI->algorithm.parameters;
228 nssPubKey = pkixPubKey->nssSPKI->subjectPublicKey; 227 nssPubKey = pkixPubKey->nssSPKI->subjectPublicKey;
229 228
230 PKIX_CHECK(pkix_hash 229 PKIX_CHECK(pkix_hash
231 (algOID.data, algOID.len, &algOIDHash, plContext), 230 (algOID.data, algOID.len, &algOIDHash, plContext),
232 PKIX_HASHFAILED); 231 PKIX_HASHFAILED);
233 232
234 PKIX_CHECK(pkix_hash 233 PKIX_CHECK(pkix_hash
235 (algParams.data, algParams.len, &algParamsHash, plContext), 234 (algParams.data, algParams.len, &algParamsHash, plContext),
236 PKIX_HASHFAILED); 235 PKIX_HASHFAILED);
237 236
238 PKIX_CHECK(pkix_hash 237 PKIX_CHECK(pkix_hash
239 (nssPubKey.data, nssPubKey.len, &pubKeyHash, plContext), 238 (nssPubKey.data, nssPubKey.len, &pubKeyHash, plContext),
240 PKIX_HASHFAILED); 239 PKIX_HASHFAILED);
241 240
242 fullHash = algOIDHash + algParamsHash + pubKeyHash;
243
244 *pHashcode = pubKeyHash; 241 *pHashcode = pubKeyHash;
245 242
246 cleanup: 243 cleanup:
247 244
248 PKIX_RETURN(PUBLICKEY); 245 PKIX_RETURN(PUBLICKEY);
249 } 246 }
250 247
251 248
252 /* 249 /*
253 * FUNCTION: pkix_pl_PublicKey_Equals 250 * FUNCTION: pkix_pl_PublicKey_Equals
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 cleanup: 480 cleanup:
484 481
485 if (thirdSPKI && PKIX_ERROR_RECEIVED){ 482 if (thirdSPKI && PKIX_ERROR_RECEIVED){
486 PKIX_CHECK(pkix_pl_DestroySPKI(thirdSPKI, plContext), 483 PKIX_CHECK(pkix_pl_DestroySPKI(thirdSPKI, plContext),
487 PKIX_DESTROYSPKIFAILED); 484 PKIX_DESTROYSPKIFAILED);
488 PKIX_FREE(thirdSPKI); 485 PKIX_FREE(thirdSPKI);
489 } 486 }
490 487
491 PKIX_RETURN(PUBLICKEY); 488 PKIX_RETURN(PUBLICKEY);
492 } 489 }
OLDNEW
« no previous file with comments | « nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_httpdefaultclient.c ('k') | nss/lib/nss/nss.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698