| OLD | NEW |
| 1 Index: mozilla/security/nss/lib/certhigh/certvfy.c | 1 Index: mozilla/security/nss/lib/certhigh/certvfy.c |
| 2 =================================================================== | 2 =================================================================== |
| 3 RCS file: /cvsroot/mozilla/security/nss/lib/certhigh/certvfy.c,v | 3 RCS file: /cvsroot/mozilla/security/nss/lib/certhigh/certvfy.c,v |
| 4 retrieving revision 1.75 | 4 retrieving revision 1.77 |
| 5 diff -p -u -8 -r1.75 certvfy.c | 5 diff -p -u -8 -r1.77 certvfy.c |
| 6 --- mozilla/security/nss/lib/certhigh/certvfy.c»14 Sep 2011 00:28:47 -0000»
1.75 | 6 --- mozilla/security/nss/lib/certhigh/certvfy.c»25 Apr 2012 14:49:27 -0000»
1.77 |
| 7 +++ mozilla/security/nss/lib/certhigh/certvfy.c»25 Oct 2011 22:35:58 -0000 | 7 +++ mozilla/security/nss/lib/certhigh/certvfy.c»7 Nov 2012 01:10:06 -0000 |
| 8 @@ -40,27 +40,70 @@ | 8 @@ -8,27 +8,70 @@ |
| 9 #include "secoid.h" | 9 #include "secoid.h" |
| 10 #include "sslerr.h" | 10 #include "sslerr.h" |
| 11 #include "genname.h" | 11 #include "genname.h" |
| 12 #include "keyhi.h" | 12 #include "keyhi.h" |
| 13 #include "cert.h" | 13 #include "cert.h" |
| 14 #include "certdb.h" | 14 #include "certdb.h" |
| 15 #include "certi.h" | 15 #include "certi.h" |
| 16 #include "cryptohi.h" | 16 #include "cryptohi.h" |
| 17 +#ifndef NSS_DISABLE_LIBPKIX | 17 +#ifndef NSS_DISABLE_LIBPKIX |
| 18 #include "pkix.h" | 18 #include "pkix.h" |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 * Check the validity times of a certificate | 72 * Check the validity times of a certificate |
| 73 */ | 73 */ |
| 74 SECStatus | 74 SECStatus |
| 75 CERT_CertTimesValid(CERTCertificate *c) | 75 CERT_CertTimesValid(CERTCertificate *c) |
| 76 { | 76 { |
| 77 SECCertTimeValidity valid = CERT_CheckCertValidTimes(c, PR_Now(), PR_TRUE); | 77 SECCertTimeValidity valid = CERT_CheckCertValidTimes(c, PR_Now(), PR_TRUE); |
| 78 return (valid == secCertTimeValid) ? SECSuccess : SECFailure; | 78 return (valid == secCertTimeValid) ? SECSuccess : SECFailure; |
| 79 Index: mozilla/security/nss/lib/ckfw/nssck.api | 79 Index: mozilla/security/nss/lib/ckfw/nssck.api |
| 80 =================================================================== | 80 =================================================================== |
| 81 RCS file: /cvsroot/mozilla/security/nss/lib/ckfw/nssck.api,v | 81 RCS file: /cvsroot/mozilla/security/nss/lib/ckfw/nssck.api,v |
| 82 retrieving revision 1.7 | 82 retrieving revision 1.8 |
| 83 diff -p -u -8 -r1.7 nssck.api | 83 diff -p -u -8 -r1.8 nssck.api |
| 84 --- mozilla/security/nss/lib/ckfw/nssck.api» 2 Feb 2005 22:28:11 -0000»
1.7 | 84 --- mozilla/security/nss/lib/ckfw/nssck.api» 25 Apr 2012 14:49:28 -0000»
1.8 |
| 85 +++ mozilla/security/nss/lib/ckfw/nssck.api» 25 Oct 2011 22:35:58 -0000 | 85 +++ mozilla/security/nss/lib/ckfw/nssck.api» 7 Nov 2012 01:10:06 -0000 |
| 86 @@ -1783,17 +1783,17 @@ C_WaitForSlotEvent | 86 @@ -1751,17 +1751,17 @@ C_WaitForSlotEvent |
| 87 CK_SLOT_ID_PTR pSlot, | 87 CK_SLOT_ID_PTR pSlot, |
| 88 CK_VOID_PTR pRserved | 88 CK_VOID_PTR pRserved |
| 89 ) | 89 ) |
| 90 { | 90 { |
| 91 return __ADJOIN(MODULE_NAME,C_WaitForSlotEvent)(flags, pSlot, pRserved); | 91 return __ADJOIN(MODULE_NAME,C_WaitForSlotEvent)(flags, pSlot, pRserved); |
| 92 } | 92 } |
| 93 #endif /* DECLARE_STRICT_CRYPTOKI_NAMES */ | 93 #endif /* DECLARE_STRICT_CRYPTOKI_NAMES */ |
| 94 | 94 |
| 95 -static CK_RV CK_ENTRY | 95 -static CK_RV CK_ENTRY |
| 96 +CK_RV CK_ENTRY | 96 +CK_RV CK_ENTRY |
| 97 __ADJOIN(MODULE_NAME,C_GetFunctionList) | 97 __ADJOIN(MODULE_NAME,C_GetFunctionList) |
| 98 ( | 98 ( |
| 99 CK_FUNCTION_LIST_PTR_PTR ppFunctionList | 99 CK_FUNCTION_LIST_PTR_PTR ppFunctionList |
| 100 ); | 100 ); |
| 101 | 101 |
| 102 static CK_FUNCTION_LIST FunctionList = { | 102 static CK_FUNCTION_LIST FunctionList = { |
| 103 { 2, 1 }, | 103 { 2, 1 }, |
| 104 __ADJOIN(MODULE_NAME,C_Initialize), | 104 __ADJOIN(MODULE_NAME,C_Initialize), |
| 105 @@ -1861,30 +1861,32 @@ __ADJOIN(MODULE_NAME,C_UnwrapKey), | 105 @@ -1829,30 +1829,32 @@ __ADJOIN(MODULE_NAME,C_UnwrapKey), |
| 106 __ADJOIN(MODULE_NAME,C_DeriveKey), | 106 __ADJOIN(MODULE_NAME,C_DeriveKey), |
| 107 __ADJOIN(MODULE_NAME,C_SeedRandom), | 107 __ADJOIN(MODULE_NAME,C_SeedRandom), |
| 108 __ADJOIN(MODULE_NAME,C_GenerateRandom), | 108 __ADJOIN(MODULE_NAME,C_GenerateRandom), |
| 109 __ADJOIN(MODULE_NAME,C_GetFunctionStatus), | 109 __ADJOIN(MODULE_NAME,C_GetFunctionStatus), |
| 110 __ADJOIN(MODULE_NAME,C_CancelFunction), | 110 __ADJOIN(MODULE_NAME,C_CancelFunction), |
| 111 __ADJOIN(MODULE_NAME,C_WaitForSlotEvent) | 111 __ADJOIN(MODULE_NAME,C_WaitForSlotEvent) |
| 112 }; | 112 }; |
| 113 | 113 |
| 114 -static CK_RV CK_ENTRY | 114 -static CK_RV CK_ENTRY |
| 115 +CK_RV CK_ENTRY | 115 +CK_RV CK_ENTRY |
| (...skipping 16 matching lines...) Expand all Loading... |
| 132 { | 132 { |
| 133 return __ADJOIN(MODULE_NAME,C_GetFunctionList)(ppFunctionList); | 133 return __ADJOIN(MODULE_NAME,C_GetFunctionList)(ppFunctionList); |
| 134 } | 134 } |
| 135 +#endif | 135 +#endif |
| 136 | 136 |
| 137 #undef __ADJOIN | 137 #undef __ADJOIN |
| 138 | 138 |
| 139 Index: mozilla/security/nss/lib/freebl/rsa.c | 139 Index: mozilla/security/nss/lib/freebl/rsa.c |
| 140 =================================================================== | 140 =================================================================== |
| 141 RCS file: /cvsroot/mozilla/security/nss/lib/freebl/rsa.c,v | 141 RCS file: /cvsroot/mozilla/security/nss/lib/freebl/rsa.c,v |
| 142 retrieving revision 1.43 | 142 retrieving revision 1.44 |
| 143 diff -p -u -8 -r1.43 rsa.c | 143 diff -p -u -8 -r1.44 rsa.c |
| 144 --- mozilla/security/nss/lib/freebl/rsa.c» 21 Sep 2011 01:09:48 -0000»
1.43 | 144 --- mozilla/security/nss/lib/freebl/rsa.c» 25 Apr 2012 14:49:43 -0000»
1.44 |
| 145 +++ mozilla/security/nss/lib/freebl/rsa.c» 25 Oct 2011 22:35:58 -0000 | 145 +++ mozilla/security/nss/lib/freebl/rsa.c» 7 Nov 2012 01:10:06 -0000 |
| 146 @@ -1588,16 +1588,23 @@ void RSA_Cleanup(void) | 146 @@ -1556,16 +1556,23 @@ void RSA_Cleanup(void) |
| 147 * free_bl may have allocated along the way. Currently only RSA does this, | 147 * free_bl may have allocated along the way. Currently only RSA does this, |
| 148 * so I've put it here for now. | 148 * so I've put it here for now. |
| 149 */ | 149 */ |
| 150 void BL_Cleanup(void) | 150 void BL_Cleanup(void) |
| 151 { | 151 { |
| 152 RSA_Cleanup(); | 152 RSA_Cleanup(); |
| 153 } | 153 } |
| 154 | 154 |
| 155 +#ifdef NSS_STATIC | 155 +#ifdef NSS_STATIC |
| 156 +void | 156 +void |
| 157 +BL_Unload(void) | 157 +BL_Unload(void) |
| 158 +{ | 158 +{ |
| 159 +} | 159 +} |
| 160 +#endif | 160 +#endif |
| 161 + | 161 + |
| 162 PRBool bl_parentForkedAfterC_Initialize; | 162 PRBool bl_parentForkedAfterC_Initialize; |
| 163 | 163 |
| 164 /* | 164 /* |
| 165 * Set fork flag so it can be tested in SKIP_AFTER_FORK on relevant platforms. | 165 * Set fork flag so it can be tested in SKIP_AFTER_FORK on relevant platforms. |
| 166 */ | 166 */ |
| 167 void BL_SetForkState(PRBool forked) | 167 void BL_SetForkState(PRBool forked) |
| 168 { | 168 { |
| 169 bl_parentForkedAfterC_Initialize = forked; | 169 bl_parentForkedAfterC_Initialize = forked; |
| 170 Index: mozilla/security/nss/lib/freebl/shvfy.c | 170 Index: mozilla/security/nss/lib/freebl/shvfy.c |
| 171 =================================================================== | 171 =================================================================== |
| 172 RCS file: /cvsroot/mozilla/security/nss/lib/freebl/shvfy.c,v | 172 RCS file: /cvsroot/mozilla/security/nss/lib/freebl/shvfy.c,v |
| 173 retrieving revision 1.15 | 173 retrieving revision 1.17 |
| 174 diff -p -u -8 -r1.15 shvfy.c | 174 diff -p -u -8 -r1.17 shvfy.c |
| 175 --- mozilla/security/nss/lib/freebl/shvfy.c» 6 Dec 2010 17:22:49 -0000»
1.15 | 175 --- mozilla/security/nss/lib/freebl/shvfy.c» 12 Jun 2012 16:39:00 -0000»
1.17 |
| 176 +++ mozilla/security/nss/lib/freebl/shvfy.c» 25 Oct 2011 22:35:58 -0000 | 176 +++ mozilla/security/nss/lib/freebl/shvfy.c» 7 Nov 2012 01:10:07 -0000 |
| 177 @@ -299,39 +299,55 @@ readItem(PRFileDesc *fd, SECItem *item) | 177 @@ -269,39 +269,55 @@ readItem(PRFileDesc *fd, SECItem *item) |
| 178 PORT_Free(item->data); | 178 PORT_Free(item->data); |
| 179 item->data = NULL; | 179 item->data = NULL; |
| 180 item->len = 0; | 180 item->len = 0; |
| 181 return SECFailure; | 181 return SECFailure; |
| 182 } | 182 } |
| 183 return SECSuccess; | 183 return SECSuccess; |
| 184 } | 184 } |
| 185 | 185 |
| 186 +/* | 186 +/* |
| 187 + * Define PSEUDO_FIPS if you can't do FIPS software integrity test (e.g., | 187 + * Define PSEUDO_FIPS if you can't do FIPS software integrity test (e.g., |
| (...skipping 30 matching lines...) Expand all Loading... |
| 218 | 218 |
| 219 PRBool | 219 PRBool |
| 220 BLAPI_SHVerifyFile(const char *shName) | 220 BLAPI_SHVerifyFile(const char *shName) |
| 221 { | 221 { |
| 222 +#ifdef PSEUDO_FIPS | 222 +#ifdef PSEUDO_FIPS |
| 223 + return PR_TRUE; /* a lie, hence *pseudo* FIPS */ | 223 + return PR_TRUE; /* a lie, hence *pseudo* FIPS */ |
| 224 +#else | 224 +#else |
| 225 char *checkName = NULL; | 225 char *checkName = NULL; |
| 226 PRFileDesc *checkFD = NULL; | 226 PRFileDesc *checkFD = NULL; |
| 227 PRFileDesc *shFD = NULL; | 227 PRFileDesc *shFD = NULL; |
| 228 SHA1Context *hashcx = NULL; | 228 void *hashcx = NULL; |
| 229 SECHashObject *hashObj = NULL; |
| 229 SECItem signature = { 0, NULL, 0 }; | 230 SECItem signature = { 0, NULL, 0 }; |
| 230 SECItem hash; | 231 SECItem hash; |
| 231 int bytesRead, offset; | 232 int bytesRead, offset; |
| 232 SECStatus rv; | 233 @@ -488,16 +504,17 @@ loser: |
| 233 @@ -510,16 +526,17 @@ loser: | |
| 234 if (key.params.base.data != NULL) { | 234 if (key.params.base.data != NULL) { |
| 235 PORT_Free(key.params.base.data); | 235 PORT_Free(key.params.base.data); |
| 236 } | 236 } |
| 237 if (key.publicValue.data != NULL) { | 237 if (key.publicValue.data != NULL) { |
| 238 PORT_Free(key.publicValue.data); | 238 PORT_Free(key.publicValue.data); |
| 239 } | 239 } |
| 240 | 240 |
| 241 return result; | 241 return result; |
| 242 +#endif /* PSEUDO_FIPS */ | 242 +#endif /* PSEUDO_FIPS */ |
| 243 } | 243 } |
| 244 | 244 |
| 245 PRBool | 245 PRBool |
| 246 BLAPI_VerifySelf(const char *name) | 246 BLAPI_VerifySelf(const char *name) |
| 247 { | 247 { |
| 248 if (name == NULL) { | 248 if (name == NULL) { |
| 249 /* | 249 /* |
| 250 * If name is NULL, freebl is statically linked into softoken. | 250 * If name is NULL, freebl is statically linked into softoken. |
| 251 Index: mozilla/security/nss/lib/nss/nssinit.c | 251 Index: mozilla/security/nss/lib/nss/nssinit.c |
| 252 =================================================================== | 252 =================================================================== |
| 253 RCS file: /cvsroot/mozilla/security/nss/lib/nss/nssinit.c,v | 253 RCS file: /cvsroot/mozilla/security/nss/lib/nss/nssinit.c,v |
| 254 retrieving revision 1.114 | 254 retrieving revision 1.116 |
| 255 diff -p -u -8 -r1.114 nssinit.c | 255 diff -p -u -8 -r1.116 nssinit.c |
| 256 --- mozilla/security/nss/lib/nss/nssinit.c» 18 Oct 2011 19:03:31 -0000»
1.114 | 256 --- mozilla/security/nss/lib/nss/nssinit.c» 25 Apr 2012 14:50:04 -0000»
1.116 |
| 257 +++ mozilla/security/nss/lib/nss/nssinit.c» 25 Oct 2011 22:35:58 -0000 | 257 +++ mozilla/security/nss/lib/nss/nssinit.c» 7 Nov 2012 01:10:07 -0000 |
| 258 @@ -50,19 +50,21 @@ | 258 @@ -18,19 +18,21 @@ |
| 259 #include "key.h" | 259 #include "key.h" |
| 260 #include "secmod.h" | 260 #include "secmod.h" |
| 261 #include "secoid.h" | 261 #include "secoid.h" |
| 262 #include "nss.h" | 262 #include "nss.h" |
| 263 #include "pk11func.h" | 263 #include "pk11func.h" |
| 264 #include "secerr.h" | 264 #include "secerr.h" |
| 265 #include "nssbase.h" | 265 #include "nssbase.h" |
| 266 #include "nssutil.h" | 266 #include "nssutil.h" |
| 267 +#ifndef NSS_DISABLE_LIBPKIX | 267 +#ifndef NSS_DISABLE_LIBPKIX |
| 268 #include "pkixt.h" | 268 #include "pkixt.h" |
| 269 #include "pkix.h" | 269 #include "pkix.h" |
| 270 #include "pkix_tools.h" | 270 #include "pkix_tools.h" |
| 271 +#endif /* NSS_DISABLE_LIBPKIX */ | 271 +#endif /* NSS_DISABLE_LIBPKIX */ |
| 272 | 272 |
| 273 #include "pki3hack.h" | 273 #include "pki3hack.h" |
| 274 #include "certi.h" | 274 #include "certi.h" |
| 275 #include "secmodi.h" | 275 #include "secmodi.h" |
| 276 #include "ocspti.h" | 276 #include "ocspti.h" |
| 277 #include "ocspi.h" | 277 #include "ocspi.h" |
| 278 | 278 |
| 279 /* | 279 /* |
| 280 @@ -559,18 +561,20 @@ nss_Init(const char *configdir, const ch | 280 @@ -527,18 +529,20 @@ nss_Init(const char *configdir, const ch |
| 281 NSSInitParameters *initParams, | 281 NSSInitParameters *initParams, |
| 282 PRBool readOnly, PRBool noCertDB, | 282 PRBool readOnly, PRBool noCertDB, |
| 283 PRBool noModDB, PRBool forceOpen, PRBool noRootInit, | 283 PRBool noModDB, PRBool forceOpen, PRBool noRootInit, |
| 284 PRBool optimizeSpace, PRBool noSingleThreadedModules, | 284 PRBool optimizeSpace, PRBool noSingleThreadedModules, |
| 285 PRBool allowAlreadyInitializedModules, | 285 PRBool allowAlreadyInitializedModules, |
| 286 PRBool dontFinalizeModules) | 286 PRBool dontFinalizeModules) |
| 287 { | 287 { |
| 288 SECStatus rv = SECFailure; | 288 SECStatus rv = SECFailure; |
| 289 +#ifndef NSS_DISABLE_LIBPKIX | 289 +#ifndef NSS_DISABLE_LIBPKIX |
| 290 PKIX_UInt32 actualMinorVersion = 0; | 290 PKIX_UInt32 actualMinorVersion = 0; |
| 291 PKIX_Error *pkixError = NULL; | 291 PKIX_Error *pkixError = NULL; |
| 292 +#endif | 292 +#endif |
| 293 PRBool isReallyInitted; | 293 PRBool isReallyInitted; |
| 294 char *configStrings = NULL; | 294 char *configStrings = NULL; |
| 295 char *configName = NULL; | 295 char *configName = NULL; |
| 296 PRBool passwordRequired = PR_FALSE; | 296 PRBool passwordRequired = PR_FALSE; |
| 297 | 297 |
| 298 /* if we are trying to init with a traditional NSS_Init call, maintain | 298 /* if we are trying to init with a traditional NSS_Init call, maintain |
| 299 * the traditional idempotent behavior. */ | 299 * the traditional idempotent behavior. */ |
| 300 if (!initContextPtr && nssIsInitted) { | 300 if (!initContextPtr && nssIsInitted) { |
| 301 @@ -711,28 +715,30 @@ nss_Init(const char *configdir, const ch | 301 @@ -679,28 +683,30 @@ nss_Init(const char *configdir, const ch |
| 302 nss_FindExternalRoot(dbpath, secmodName); | 302 nss_FindExternalRoot(dbpath, secmodName); |
| 303 } | 303 } |
| 304 } | 304 } |
| 305 } | 305 } |
| 306 | 306 |
| 307 pk11sdr_Init(); | 307 pk11sdr_Init(); |
| 308 cert_CreateSubjectKeyIDHashTable(); | 308 cert_CreateSubjectKeyIDHashTable(); |
| 309 | 309 |
| 310 +#ifndef NSS_DISABLE_LIBPKIX | 310 +#ifndef NSS_DISABLE_LIBPKIX |
| 311 pkixError = PKIX_Initialize | 311 pkixError = PKIX_Initialize |
| (...skipping 10 matching lines...) Expand all Loading... |
| 322 } | 322 } |
| 323 +#endif /* NSS_DISABLE_LIBPKIX */ | 323 +#endif /* NSS_DISABLE_LIBPKIX */ |
| 324 | 324 |
| 325 | 325 |
| 326 } | 326 } |
| 327 | 327 |
| 328 /* | 328 /* |
| 329 * Now mark the appropriate init state. If initContextPtr was passed | 329 * Now mark the appropriate init state. If initContextPtr was passed |
| 330 * in, then return the new context pointer and add it to the | 330 * in, then return the new context pointer and add it to the |
| 331 * nssInitContextList. Otherwise set the global nss_isInitted flag | 331 * nssInitContextList. Otherwise set the global nss_isInitted flag |
| 332 @@ -1092,17 +1098,19 @@ nss_Shutdown(void) | 332 @@ -1064,17 +1070,19 @@ nss_Shutdown(void) |
| 333 | 333 |
| 334 rv = nss_ShutdownShutdownList(); | 334 rv = nss_ShutdownShutdownList(); |
| 335 if (rv != SECSuccess) { | 335 if (rv != SECSuccess) { |
| 336 shutdownRV = SECFailure; | 336 shutdownRV = SECFailure; |
| 337 } | 337 } |
| 338 cert_DestroyLocks(); | 338 cert_DestroyLocks(); |
| 339 ShutdownCRLCache(); | 339 ShutdownCRLCache(); |
| 340 OCSP_ShutdownGlobal(); | 340 OCSP_ShutdownGlobal(); |
| 341 +#ifndef NSS_DISABLE_LIBPKIX | 341 +#ifndef NSS_DISABLE_LIBPKIX |
| 342 PKIX_Shutdown(plContext); | 342 PKIX_Shutdown(plContext); |
| 343 +#endif | 343 +#endif |
| 344 SECOID_Shutdown(); | 344 SECOID_Shutdown(); |
| 345 status = STAN_Shutdown(); | 345 status = STAN_Shutdown(); |
| 346 cert_DestroySubjectKeyIDHashTable(); | 346 cert_DestroySubjectKeyIDHashTable(); |
| 347 pk11_SetInternalKeySlot(NULL); | 347 pk11_SetInternalKeySlot(NULL); |
| 348 rv = SECMOD_Shutdown(); | 348 rv = SECMOD_Shutdown(); |
| 349 if (rv != SECSuccess) { | 349 if (rv != SECSuccess) { |
| 350 shutdownRV = SECFailure; | 350 shutdownRV = SECFailure; |
| 351 } | 351 } |
| 352 Index: mozilla/security/nss/lib/pk11wrap/pk11load.c | 352 Index: mozilla/security/nss/lib/pk11wrap/pk11load.c |
| 353 =================================================================== | 353 =================================================================== |
| 354 RCS file: /cvsroot/mozilla/security/nss/lib/pk11wrap/pk11load.c,v | 354 RCS file: /cvsroot/mozilla/security/nss/lib/pk11wrap/pk11load.c,v |
| 355 retrieving revision 1.33 | 355 retrieving revision 1.35 |
| 356 diff -p -u -8 -r1.33 pk11load.c | 356 diff -p -u -8 -r1.35 pk11load.c |
| 357 --- mozilla/security/nss/lib/pk11wrap/pk11load.c» 15 Jul 2011 15:03:43 -00
00» 1.33 | 357 --- mozilla/security/nss/lib/pk11wrap/pk11load.c» 25 Apr 2012 14:50:05 -00
00» 1.35 |
| 358 +++ mozilla/security/nss/lib/pk11wrap/pk11load.c» 25 Oct 2011 22:35:58 -00
00 | 358 +++ mozilla/security/nss/lib/pk11wrap/pk11load.c» 7 Nov 2012 01:10:07 -000
0 |
| 359 @@ -344,46 +344,55 @@ SECMOD_SetRootCerts(PK11SlotInfo *slot, | 359 @@ -312,46 +312,55 @@ SECMOD_SetRootCerts(PK11SlotInfo *slot, |
| 360 mod->slotInfo = psi_list; | 360 mod->slotInfo = psi_list; |
| 361 mod->slotInfoCount++; | 361 mod->slotInfoCount++; |
| 362 | 362 |
| 363 } | 363 } |
| 364 psi->hasRootCerts = 1; | 364 psi->hasRootCerts = 1; |
| 365 } | 365 } |
| 366 } | 366 } |
| 367 | 367 |
| 368 +#ifdef NSS_STATIC | 368 +#ifdef NSS_STATIC |
| 369 +extern CK_RV NSC_GetFunctionList(CK_FUNCTION_LIST_PTR *pFunctionList); | 369 +extern CK_RV NSC_GetFunctionList(CK_FUNCTION_LIST_PTR *pFunctionList); |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 } | 405 } |
| 406 +#endif /* !NSS_STATIC */ | 406 +#endif /* !NSS_STATIC */ |
| 407 | 407 |
| 408 /* | 408 /* |
| 409 * load a new module into our address space and initialize it. | 409 * load a new module into our address space and initialize it. |
| 410 */ | 410 */ |
| 411 SECStatus | 411 SECStatus |
| 412 secmod_LoadPKCS11Module(SECMODModule *mod, SECMODModule **oldModule) { | 412 secmod_LoadPKCS11Module(SECMODModule *mod, SECMODModule **oldModule) { |
| 413 PRLibrary *library = NULL; | 413 PRLibrary *library = NULL; |
| 414 CK_C_GetFunctionList entry = NULL; | 414 CK_C_GetFunctionList entry = NULL; |
| 415 @@ -392,16 +401,26 @@ secmod_LoadPKCS11Module(SECMODModule *mo | 415 @@ -360,16 +369,26 @@ secmod_LoadPKCS11Module(SECMODModule *mo |
| 416 SECStatus rv; | 416 SECStatus rv; |
| 417 PRBool alreadyLoaded = PR_FALSE; | 417 PRBool alreadyLoaded = PR_FALSE; |
| 418 char *disableUnload = NULL; | 418 char *disableUnload = NULL; |
| 419 | 419 |
| 420 if (mod->loaded) return SECSuccess; | 420 if (mod->loaded) return SECSuccess; |
| 421 | 421 |
| 422 /* intenal modules get loaded from their internal list */ | 422 /* intenal modules get loaded from their internal list */ |
| 423 if (mod->internal && (mod->dllName == NULL)) { | 423 if (mod->internal && (mod->dllName == NULL)) { |
| 424 +#ifdef NSS_STATIC | 424 +#ifdef NSS_STATIC |
| 425 + if (mod->isFIPS) { | 425 + if (mod->isFIPS) { |
| 426 + entry = FC_GetFunctionList; | 426 + entry = FC_GetFunctionList; |
| 427 + } else { | 427 + } else { |
| 428 + entry = NSC_GetFunctionList; | 428 + entry = NSC_GetFunctionList; |
| 429 + } | 429 + } |
| 430 + if (mod->isModuleDB) { | 430 + if (mod->isModuleDB) { |
| 431 + mod->moduleDBFunc = NSC_ModuleDBFunc; | 431 + mod->moduleDBFunc = NSC_ModuleDBFunc; |
| 432 + } | 432 + } |
| 433 +#else | 433 +#else |
| 434 /* | 434 /* |
| 435 * Loads softoken as a dynamic library, | 435 * Loads softoken as a dynamic library, |
| 436 * even though the rest of NSS assumes this as the "internal" module. | 436 * even though the rest of NSS assumes this as the "internal" module. |
| 437 */ | 437 */ |
| 438 if (!softokenLib && | 438 if (!softokenLib && |
| 439 PR_SUCCESS != PR_CallOnce(&loadSoftokenOnce, &softoken_LoadDSO)) | 439 PR_SUCCESS != PR_CallOnce(&loadSoftokenOnce, &softoken_LoadDSO)) |
| 440 return SECFailure; | 440 return SECFailure; |
| 441 | 441 |
| 442 @@ -417,26 +436,36 @@ secmod_LoadPKCS11Module(SECMODModule *mo | 442 @@ -385,26 +404,36 @@ secmod_LoadPKCS11Module(SECMODModule *mo |
| 443 | 443 |
| 444 if (!entry) | 444 if (!entry) |
| 445 return SECFailure; | 445 return SECFailure; |
| 446 | 446 |
| 447 if (mod->isModuleDB) { | 447 if (mod->isModuleDB) { |
| 448 mod->moduleDBFunc = (CK_C_GetFunctionList) | 448 mod->moduleDBFunc = (CK_C_GetFunctionList) |
| 449 PR_FindSymbol(softokenLib, "NSC_ModuleDBFunc"); | 449 PR_FindSymbol(softokenLib, "NSC_ModuleDBFunc"); |
| 450 } | 450 } |
| 451 +#endif | 451 +#endif |
| 452 | 452 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 469 + } | 469 + } |
| 470 +#endif | 470 +#endif |
| 471 | 471 |
| 472 /* load the library. If this succeeds, then we have to remember to | 472 /* load the library. If this succeeds, then we have to remember to |
| 473 * unload the library if anything goes wrong from here on out... | 473 * unload the library if anything goes wrong from here on out... |
| 474 */ | 474 */ |
| 475 library = PR_LoadLibrary(mod->dllName); | 475 library = PR_LoadLibrary(mod->dllName); |
| 476 mod->library = (void *)library; | 476 mod->library = (void *)library; |
| 477 | 477 |
| 478 if (library == NULL) { | 478 if (library == NULL) { |
| 479 @@ -449,16 +478,17 @@ secmod_LoadPKCS11Module(SECMODModule *mo | 479 @@ -417,16 +446,19 @@ secmod_LoadPKCS11Module(SECMODModule *mo |
| 480 if (!mod->moduleDBOnly) { | 480 if (!mod->moduleDBOnly) { |
| 481 entry = (CK_C_GetFunctionList) | 481 entry = (CK_C_GetFunctionList) |
| 482 PR_FindSymbol(library, "C_GetFunctionList"); | 482 PR_FindSymbol(library, "C_GetFunctionList"); |
| 483 } | 483 } |
| 484 if (mod->isModuleDB) { | 484 if (mod->isModuleDB) { |
| 485 mod->moduleDBFunc = (void *) | 485 mod->moduleDBFunc = (void *) |
| 486 PR_FindSymbol(library, "NSS_ReturnModuleSpecData"); | 486 PR_FindSymbol(library, "NSS_ReturnModuleSpecData"); |
| 487 } | 487 } |
| 488 +#if defined(NSS_STATIC) && !defined(NSS_DISABLE_ROOT_CERTS) |
| 488 +library_loaded: | 489 +library_loaded: |
| 490 +#endif |
| 489 if (mod->moduleDBFunc == NULL) mod->isModuleDB = PR_FALSE; | 491 if (mod->moduleDBFunc == NULL) mod->isModuleDB = PR_FALSE; |
| 490 if (entry == NULL) { | 492 if (entry == NULL) { |
| 491 if (mod->isModuleDB) { | 493 if (mod->isModuleDB) { |
| 492 mod->loaded = PR_TRUE; | 494 mod->loaded = PR_TRUE; |
| 493 mod->moduleDBOnly = PR_TRUE; | 495 mod->moduleDBOnly = PR_TRUE; |
| 494 return SECSuccess; | 496 return SECSuccess; |
| 495 } | 497 } |
| 496 PR_UnloadLibrary(library); | 498 PR_UnloadLibrary(library); |
| 497 @@ -588,33 +618,40 @@ SECMOD_UnloadModule(SECMODModule *mod) { | 499 @@ -556,33 +588,40 @@ SECMOD_UnloadModule(SECMODModule *mod) { |
| 498 } | 500 } |
| 499 mod->moduleID = 0; | 501 mod->moduleID = 0; |
| 500 mod->loaded = PR_FALSE; | 502 mod->loaded = PR_FALSE; |
| 501 | 503 |
| 502 /* do we want the semantics to allow unloading the internal library? | 504 /* do we want the semantics to allow unloading the internal library? |
| 503 * if not, we should change this to SECFailure and move it above the | 505 * if not, we should change this to SECFailure and move it above the |
| 504 * mod->loaded = PR_FALSE; */ | 506 * mod->loaded = PR_FALSE; */ |
| 505 if (mod->internal && (mod->dllName == NULL)) { | 507 if (mod->internal && (mod->dllName == NULL)) { |
| 506 +#ifndef NSS_STATIC | 508 +#ifndef NSS_STATIC |
| 507 if (0 == PR_ATOMIC_DECREMENT(&softokenLoadCount)) { | 509 if (0 == PR_ATOMIC_DECREMENT(&softokenLoadCount)) { |
| (...skipping 23 matching lines...) Expand all Loading... |
| 531 } | 533 } |
| 532 | 534 |
| 533 disableUnload = PR_GetEnv("NSS_DISABLE_UNLOAD"); | 535 disableUnload = PR_GetEnv("NSS_DISABLE_UNLOAD"); |
| 534 if (!disableUnload) { | 536 if (!disableUnload) { |
| 535 PR_UnloadLibrary(library); | 537 PR_UnloadLibrary(library); |
| 536 } | 538 } |
| 537 return SECSuccess; | 539 return SECSuccess; |
| 538 Index: mozilla/security/nss/lib/softoken/lgglue.c | 540 Index: mozilla/security/nss/lib/softoken/lgglue.c |
| 539 =================================================================== | 541 =================================================================== |
| 540 RCS file: /cvsroot/mozilla/security/nss/lib/softoken/lgglue.c,v | 542 RCS file: /cvsroot/mozilla/security/nss/lib/softoken/lgglue.c,v |
| 541 retrieving revision 1.13 | 543 retrieving revision 1.14 |
| 542 diff -p -u -8 -r1.13 lgglue.c | 544 diff -p -u -8 -r1.14 lgglue.c |
| 543 --- mozilla/security/nss/lib/softoken/lgglue.c» 16 Apr 2009 18:19:26 -0000»
1.13 | 545 --- mozilla/security/nss/lib/softoken/lgglue.c» 25 Apr 2012 14:50:10 -0000»
1.14 |
| 544 +++ mozilla/security/nss/lib/softoken/lgglue.c» 25 Oct 2011 22:35:58 -0000 | 546 +++ mozilla/security/nss/lib/softoken/lgglue.c» 7 Nov 2012 01:10:07 -0000 |
| 545 @@ -50,16 +50,17 @@ | 547 @@ -18,16 +18,17 @@ |
| 546 | 548 |
| 547 static LGOpenFunc legacy_glue_open = NULL; | 549 static LGOpenFunc legacy_glue_open = NULL; |
| 548 static LGReadSecmodFunc legacy_glue_readSecmod = NULL; | 550 static LGReadSecmodFunc legacy_glue_readSecmod = NULL; |
| 549 static LGReleaseSecmodFunc legacy_glue_releaseSecmod = NULL; | 551 static LGReleaseSecmodFunc legacy_glue_releaseSecmod = NULL; |
| 550 static LGDeleteSecmodFunc legacy_glue_deleteSecmod = NULL; | 552 static LGDeleteSecmodFunc legacy_glue_deleteSecmod = NULL; |
| 551 static LGAddSecmodFunc legacy_glue_addSecmod = NULL; | 553 static LGAddSecmodFunc legacy_glue_addSecmod = NULL; |
| 552 static LGShutdownFunc legacy_glue_shutdown = NULL; | 554 static LGShutdownFunc legacy_glue_shutdown = NULL; |
| 553 | 555 |
| 554 +#ifndef NSS_STATIC | 556 +#ifndef NSS_STATIC |
| 555 /* | 557 /* |
| 556 * The following 3 functions duplicate the work done by bl_LoadLibrary. | 558 * The following 3 functions duplicate the work done by bl_LoadLibrary. |
| 557 * We should make bl_LoadLibrary a global and replace the call to | 559 * We should make bl_LoadLibrary a global and replace the call to |
| 558 * sftkdb_LoadLibrary(const char *libname) with it. | 560 * sftkdb_LoadLibrary(const char *libname) with it. |
| 559 */ | 561 */ |
| 560 #ifdef XP_UNIX | 562 #ifdef XP_UNIX |
| 561 #include <unistd.h> | 563 #include <unistd.h> |
| 562 #define LG_MAX_LINKS 20 | 564 #define LG_MAX_LINKS 20 |
| 563 @@ -187,16 +188,17 @@ done: | 565 @@ -155,16 +156,17 @@ done: |
| 564 PRLibSpec libSpec; | 566 PRLibSpec libSpec; |
| 565 libSpec.type = PR_LibSpec_Pathname; | 567 libSpec.type = PR_LibSpec_Pathname; |
| 566 libSpec.value.pathname = libname; | 568 libSpec.value.pathname = libname; |
| 567 lib = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL); | 569 lib = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL); |
| 568 } | 570 } |
| 569 | 571 |
| 570 return lib; | 572 return lib; |
| 571 } | 573 } |
| 572 +#endif /* STATIC LIBRARIES */ | 574 +#endif /* STATIC LIBRARIES */ |
| 573 | 575 |
| 574 /* | 576 /* |
| 575 * stub files for legacy db's to be able to encrypt and decrypt | 577 * stub files for legacy db's to be able to encrypt and decrypt |
| 576 * various keys and attributes. | 578 * various keys and attributes. |
| 577 */ | 579 */ |
| 578 static SECStatus | 580 static SECStatus |
| 579 sftkdb_encrypt_stub(PRArenaPool *arena, SDB *sdb, SECItem *plainText, | 581 sftkdb_encrypt_stub(PRArenaPool *arena, SDB *sdb, SECItem *plainText, |
| 580 SECItem **cipherText) | 582 SECItem **cipherText) |
| 581 @@ -299,16 +301,31 @@ sftkdbLoad_Legacy(PRBool isFIPS) | 583 @@ -267,16 +269,31 @@ sftkdbLoad_Legacy(PRBool isFIPS) |
| 582 * get cleared in shutdown */ | 584 * get cleared in shutdown */ |
| 583 return SECFailure; | 585 return SECFailure; |
| 584 } | 586 } |
| 585 legacy_glue_libCheckSucceeded = PR_TRUE; | 587 legacy_glue_libCheckSucceeded = PR_TRUE; |
| 586 } | 588 } |
| 587 return SECSuccess; | 589 return SECSuccess; |
| 588 } | 590 } |
| 589 | 591 |
| 590 +#ifdef NSS_STATIC | 592 +#ifdef NSS_STATIC |
| 591 +#ifdef NSS_DISABLE_DBM | 593 +#ifdef NSS_DISABLE_DBM |
| (...skipping 11 matching lines...) Expand all Loading... |
| 603 +#endif | 605 +#endif |
| 604 +#else | 606 +#else |
| 605 lib = sftkdb_LoadLibrary(LEGACY_LIB_NAME); | 607 lib = sftkdb_LoadLibrary(LEGACY_LIB_NAME); |
| 606 if (lib == NULL) { | 608 if (lib == NULL) { |
| 607 return SECFailure; | 609 return SECFailure; |
| 608 } | 610 } |
| 609 | 611 |
| 610 legacy_glue_open = (LGOpenFunc)PR_FindFunctionSymbol(lib, "legacy_Open"); | 612 legacy_glue_open = (LGOpenFunc)PR_FindFunctionSymbol(lib, "legacy_Open"); |
| 611 legacy_glue_readSecmod = (LGReadSecmodFunc) PR_FindFunctionSymbol(lib, | 613 legacy_glue_readSecmod = (LGReadSecmodFunc) PR_FindFunctionSymbol(lib, |
| 612 "legacy_ReadSecmodDB"); | 614 "legacy_ReadSecmodDB"); |
| 613 @@ -324,21 +341,24 @@ sftkdbLoad_Legacy(PRBool isFIPS) | 615 @@ -292,21 +309,24 @@ sftkdbLoad_Legacy(PRBool isFIPS) |
| 614 "legacy_SetCryptFunctions"); | 616 "legacy_SetCryptFunctions"); |
| 615 | 617 |
| 616 if (!legacy_glue_open || !legacy_glue_readSecmod || | 618 if (!legacy_glue_open || !legacy_glue_readSecmod || |
| 617 !legacy_glue_releaseSecmod || !legacy_glue_deleteSecmod || | 619 !legacy_glue_releaseSecmod || !legacy_glue_deleteSecmod || |
| 618 !legacy_glue_addSecmod || !setCryptFunction) { | 620 !legacy_glue_addSecmod || !setCryptFunction) { |
| 619 PR_UnloadLibrary(lib); | 621 PR_UnloadLibrary(lib); |
| 620 return SECFailure; | 622 return SECFailure; |
| 621 } | 623 } |
| 622 +#endif /* NSS_STATIC */ | 624 +#endif /* NSS_STATIC */ |
| 623 | 625 |
| 624 /* verify the loaded library if we are in FIPS mode */ | 626 /* verify the loaded library if we are in FIPS mode */ |
| 625 if (isFIPS) { | 627 if (isFIPS) { |
| 626 if (!BLAPI_SHVerify(LEGACY_LIB_NAME,(PRFuncPtr)legacy_glue_open)) { | 628 if (!BLAPI_SHVerify(LEGACY_LIB_NAME,(PRFuncPtr)legacy_glue_open)) { |
| 627 +#ifndef NSS_STATIC | 629 +#ifndef NSS_STATIC |
| 628 PR_UnloadLibrary(lib); | 630 PR_UnloadLibrary(lib); |
| 629 +#endif | 631 +#endif |
| 630 return SECFailure; | 632 return SECFailure; |
| 631 } | 633 } |
| 632 legacy_glue_libCheckSucceeded = PR_TRUE; | 634 legacy_glue_libCheckSucceeded = PR_TRUE; |
| 633 } | 635 } |
| 634 | 636 |
| 635 setCryptFunction(sftkdb_encrypt_stub,sftkdb_decrypt_stub); | 637 setCryptFunction(sftkdb_encrypt_stub,sftkdb_decrypt_stub); |
| 636 legacy_glue_lib = lib; | 638 legacy_glue_lib = lib; |
| 637 return SECSuccess; | 639 return SECSuccess; |
| 638 @@ -445,20 +465,22 @@ sftkdbCall_Shutdown(void) | 640 @@ -413,20 +433,22 @@ sftkdbCall_Shutdown(void) |
| 639 return CKR_OK; | 641 return CKR_OK; |
| 640 } | 642 } |
| 641 if (legacy_glue_shutdown) { | 643 if (legacy_glue_shutdown) { |
| 642 #ifdef NO_FORK_CHECK | 644 #ifdef NO_FORK_CHECK |
| 643 PRBool parentForkedAfterC_Initialize = PR_FALSE; | 645 PRBool parentForkedAfterC_Initialize = PR_FALSE; |
| 644 #endif | 646 #endif |
| 645 crv = (*legacy_glue_shutdown)(parentForkedAfterC_Initialize); | 647 crv = (*legacy_glue_shutdown)(parentForkedAfterC_Initialize); |
| 646 } | 648 } |
| 647 +#ifndef NSS_STATIC | 649 +#ifndef NSS_STATIC |
| 648 disableUnload = PR_GetEnv("NSS_DISABLE_UNLOAD"); | 650 disableUnload = PR_GetEnv("NSS_DISABLE_UNLOAD"); |
| 649 if (!disableUnload) { | 651 if (!disableUnload) { |
| 650 PR_UnloadLibrary(legacy_glue_lib); | 652 PR_UnloadLibrary(legacy_glue_lib); |
| 651 } | 653 } |
| 652 +#endif | 654 +#endif |
| 653 legacy_glue_lib = NULL; | 655 legacy_glue_lib = NULL; |
| 654 legacy_glue_open = NULL; | 656 legacy_glue_open = NULL; |
| 655 legacy_glue_readSecmod = NULL; | 657 legacy_glue_readSecmod = NULL; |
| 656 legacy_glue_releaseSecmod = NULL; | 658 legacy_glue_releaseSecmod = NULL; |
| 657 legacy_glue_deleteSecmod = NULL; | 659 legacy_glue_deleteSecmod = NULL; |
| 658 legacy_glue_addSecmod = NULL; | 660 legacy_glue_addSecmod = NULL; |
| 659 legacy_glue_libCheckFailed = PR_FALSE; | 661 legacy_glue_libCheckFailed = PR_FALSE; |
| 660 legacy_glue_libCheckSucceeded = PR_FALSE; | 662 legacy_glue_libCheckSucceeded = PR_FALSE; |
| 661 Index: mozilla/security/nss/lib/softoken/lgglue.h | 663 Index: mozilla/security/nss/lib/softoken/lgglue.h |
| 662 =================================================================== | 664 =================================================================== |
| 663 RCS file: /cvsroot/mozilla/security/nss/lib/softoken/lgglue.h,v | 665 RCS file: /cvsroot/mozilla/security/nss/lib/softoken/lgglue.h,v |
| 664 retrieving revision 1.4 | 666 retrieving revision 1.5 |
| 665 diff -p -u -8 -r1.4 lgglue.h | 667 diff -p -u -8 -r1.5 lgglue.h |
| 666 --- mozilla/security/nss/lib/softoken/lgglue.h» 16 Apr 2009 18:19:26 -0000»
1.4 | 668 --- mozilla/security/nss/lib/softoken/lgglue.h» 25 Apr 2012 14:50:10 -0000»
1.5 |
| 667 +++ mozilla/security/nss/lib/softoken/lgglue.h» 25 Oct 2011 22:35:58 -0000 | 669 +++ mozilla/security/nss/lib/softoken/lgglue.h» 7 Nov 2012 01:10:07 -0000 |
| 668 @@ -65,16 +65,35 @@ typedef SECStatus (*LGDeleteSecmodFunc)( | 670 @@ -33,16 +33,35 @@ typedef SECStatus (*LGDeleteSecmodFunc)( |
| 669 const char *dbname, char *params, PRBool rw); | 671 const char *dbname, char *params, PRBool rw); |
| 670 typedef SECStatus (*LGAddSecmodFunc)(const char *appName, | 672 typedef SECStatus (*LGAddSecmodFunc)(const char *appName, |
| 671 const char *filename, | 673 const char *filename, |
| 672 const char *dbname, char *params, PRBool rw); | 674 const char *dbname, char *params, PRBool rw); |
| 673 typedef SECStatus (*LGShutdownFunc)(PRBool forked); | 675 typedef SECStatus (*LGShutdownFunc)(PRBool forked); |
| 674 typedef void (*LGSetForkStateFunc)(PRBool); | 676 typedef void (*LGSetForkStateFunc)(PRBool); |
| 675 typedef void (*LGSetCryptFunc)(LGEncryptFunc, LGDecryptFunc); | 677 typedef void (*LGSetCryptFunc)(LGEncryptFunc, LGDecryptFunc); |
| 676 | 678 |
| 677 +extern CK_RV legacy_Open(const char *dir, const char *certPrefix, | 679 +extern CK_RV legacy_Open(const char *dir, const char *certPrefix, |
| 678 + const char *keyPrefix, | 680 + const char *keyPrefix, |
| (...skipping 18 matching lines...) Expand all Loading... |
| 697 * Softoken Glue Functions | 699 * Softoken Glue Functions |
| 698 */ | 700 */ |
| 699 CK_RV sftkdbCall_open(const char *dir, const char *certPrefix, | 701 CK_RV sftkdbCall_open(const char *dir, const char *certPrefix, |
| 700 const char *keyPrefix, | 702 const char *keyPrefix, |
| 701 int certVersion, int keyVersion, int flags, PRBool isFIPS, | 703 int certVersion, int keyVersion, int flags, PRBool isFIPS, |
| 702 SDB **certDB, SDB **keyDB); | 704 SDB **certDB, SDB **keyDB); |
| 703 char ** sftkdbCall_ReadSecmodDB(const char *appName, const char *filename, | 705 char ** sftkdbCall_ReadSecmodDB(const char *appName, const char *filename, |
| 704 Index: mozilla/security/nss/lib/util/secport.h | 706 Index: mozilla/security/nss/lib/util/secport.h |
| 705 =================================================================== | 707 =================================================================== |
| 706 RCS file: /cvsroot/mozilla/security/nss/lib/util/secport.h,v | 708 RCS file: /cvsroot/mozilla/security/nss/lib/util/secport.h,v |
| 707 retrieving revision 1.27 | 709 retrieving revision 1.28 |
| 708 diff -p -u -8 -r1.27 secport.h | 710 diff -p -u -8 -r1.28 secport.h |
| 709 --- mozilla/security/nss/lib/util/secport.h» 4 Oct 2011 18:46:04 -0000»
1.27 | 711 --- mozilla/security/nss/lib/util/secport.h» 25 Apr 2012 14:50:16 -0000»
1.28 |
| 710 +++ mozilla/security/nss/lib/util/secport.h» 25 Oct 2011 22:35:58 -0000 | 712 +++ mozilla/security/nss/lib/util/secport.h» 7 Nov 2012 01:10:07 -0000 |
| 711 @@ -248,16 +248,17 @@ sec_port_iso88591_utf8_conversion_functi | 713 @@ -216,16 +216,17 @@ sec_port_iso88591_utf8_conversion_functi |
| 712 unsigned int maxOutBufLen, | 714 unsigned int maxOutBufLen, |
| 713 unsigned int *outBufLen | 715 unsigned int *outBufLen |
| 714 ); | 716 ); |
| 715 | 717 |
| 716 extern int NSS_PutEnv(const char * envVarName, const char * envValue); | 718 extern int NSS_PutEnv(const char * envVarName, const char * envValue); |
| 717 | 719 |
| 718 extern int NSS_SecureMemcmp(const void *a, const void *b, size_t n); | 720 extern int NSS_SecureMemcmp(const void *a, const void *b, size_t n); |
| 719 | 721 |
| 720 +#ifndef NSS_STATIC | 722 +#ifndef NSS_STATIC |
| 721 /* | 723 /* |
| 722 * Load a shared library called "newShLibName" in the same directory as | 724 * Load a shared library called "newShLibName" in the same directory as |
| 723 * a shared library that is already loaded, called existingShLibName. | 725 * a shared library that is already loaded, called existingShLibName. |
| 724 * A pointer to a static function in that shared library, | 726 * A pointer to a static function in that shared library, |
| 725 * staticShLibFunc, is required. | 727 * staticShLibFunc, is required. |
| 726 * | 728 * |
| 727 * existingShLibName: | 729 * existingShLibName: |
| 728 * The file name of the shared library that shall be used as the | 730 * The file name of the shared library that shall be used as the |
| 729 @@ -282,12 +283,13 @@ extern int NSS_SecureMemcmp(const void * | 731 @@ -250,12 +251,13 @@ extern int NSS_SecureMemcmp(const void * |
| 730 * | 732 * |
| 731 * If the new shared library is not found in the same location as the reference | 733 * If the new shared library is not found in the same location as the reference |
| 732 * library, it will then be loaded from the normal system library path. | 734 * library, it will then be loaded from the normal system library path. |
| 733 */ | 735 */ |
| 734 PRLibrary * | 736 PRLibrary * |
| 735 PORT_LoadLibraryFromOrigin(const char* existingShLibName, | 737 PORT_LoadLibraryFromOrigin(const char* existingShLibName, |
| 736 PRFuncPtr staticShLibFunc, | 738 PRFuncPtr staticShLibFunc, |
| 737 const char *newShLibName); | 739 const char *newShLibName); |
| 738 +#endif /* NSS_STATIC */ | 740 +#endif /* NSS_STATIC */ |
| 739 | 741 |
| 740 SEC_END_PROTOS | 742 SEC_END_PROTOS |
| 741 | 743 |
| 742 #endif /* _SECPORT_H_ */ | 744 #endif /* _SECPORT_H_ */ |
| OLD | NEW |