Re-land patch for bug 83536, merging principal objects.
Also includes fixes from bug 216041. r=bzbarsky sr=jst git-svn-id: svn://10.0.0.236/trunk@148229 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -47,12 +47,12 @@
|
||||
#include "nsIPrompt.h"
|
||||
#include "nsIFilePicker.h"
|
||||
#include "nsJSPrincipals.h"
|
||||
#include "nsScriptSecurityManager.h"
|
||||
#include "nsIPrincipal.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsIGenKeypairInfoDlg.h"
|
||||
#include "nsIDOMCryptoDialogs.h"
|
||||
#include "jsapi.h"
|
||||
#include "jsdbgapi.h"
|
||||
#include <ctype.h>
|
||||
#include "nsReadableUtils.h"
|
||||
#include "pk11func.h"
|
||||
@@ -1788,7 +1788,7 @@ nsCryptoRunnable::Run()
|
||||
nsNSSShutDownPreventionLock locker;
|
||||
JSPrincipals *principals;
|
||||
|
||||
nsresult rv = m_args->m_principals->GetJSPrincipals(&principals);
|
||||
nsresult rv = m_args->m_principals->GetJsPrincipals(&principals);
|
||||
if (NS_FAILED(rv))
|
||||
return NS_ERROR_FAILURE;
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
#include "nsIWindowWatcher.h"
|
||||
#include "nsIPrompt.h"
|
||||
#include "nsProxiedService.h"
|
||||
#include "nsICertificatePrincipal.h"
|
||||
#include "nsIPrincipal.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsIDateTimeFormat.h"
|
||||
#include "prtypes.h"
|
||||
@@ -1458,17 +1458,19 @@ nsNSSComponent::VerifySignature(const char* aRSABuf, PRUint32 aRSABufLen,
|
||||
rv2 = pCert->GetSha1Fingerprint(fingerprint);
|
||||
NS_LossyConvertUCS2toASCII fingerprintStr(fingerprint);
|
||||
if (NS_FAILED(rv2)) return rv2;
|
||||
rv2 = mScriptSecurityManager->GetCertificatePrincipal(fingerprintStr.get(), aPrincipal);
|
||||
if (NS_FAILED(rv2) || !*aPrincipal) return rv2;
|
||||
nsCOMPtr<nsIPrincipal> certPrincipal;
|
||||
rv2 = mScriptSecurityManager->GetCertificatePrincipal(fingerprintStr.get(), nsnull,
|
||||
getter_AddRefs(certPrincipal));
|
||||
if (NS_FAILED(rv2) || !certPrincipal) return rv2;
|
||||
|
||||
nsCOMPtr<nsICertificatePrincipal> certPrincipal = do_QueryInterface(*aPrincipal, &rv2);
|
||||
if (NS_FAILED(rv2)) return rv2;
|
||||
nsAutoString orgName;
|
||||
rv2 = pCert->GetOrganization(orgName);
|
||||
if (NS_FAILED(rv2)) return rv2;
|
||||
NS_LossyConvertUCS2toASCII orgNameStr(orgName);
|
||||
rv2 = certPrincipal->SetCommonName(orgNameStr.get());
|
||||
if (NS_FAILED(rv2)) return rv2;
|
||||
|
||||
*aPrincipal = certPrincipal;
|
||||
}
|
||||
|
||||
if (p7_info) {
|
||||
|
||||
Reference in New Issue
Block a user