зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 4ad33c6fbfca (bug 832834) for merge conflict. CLOSED TREE
This commit is contained in:
Родитель
5e13847479
Коммит
bc4c3d2021
|
@ -131,6 +131,7 @@ function startTest2() {
|
|||
"onStateChange",
|
||||
"onLocationChange",
|
||||
"onSecurityChange",
|
||||
"onSecurityChange",
|
||||
"onStateChange",
|
||||
];
|
||||
gFrontNotifications = gAllNotifications;
|
||||
|
@ -155,6 +156,7 @@ function startTest4() {
|
|||
"onStateChange",
|
||||
"onLocationChange",
|
||||
"onSecurityChange",
|
||||
"onSecurityChange",
|
||||
"onStateChange",
|
||||
];
|
||||
gFrontNotifications = [];
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -6,8 +6,13 @@
|
|||
#ifndef nsSecureBrowserUIImpl_h
|
||||
#define nsSecureBrowserUIImpl_h
|
||||
|
||||
#include "PLDHashTable.h"
|
||||
#include "mozilla/ReentrancyGuard.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsINetUtil.h"
|
||||
#include "nsISecureBrowserUI.h"
|
||||
#include "nsISecurityEventSink.h"
|
||||
#include "nsIURI.h"
|
||||
#include "nsIWebProgressListener.h"
|
||||
#include "nsWeakReference.h"
|
||||
|
||||
|
@ -17,10 +22,13 @@ class nsIChannel;
|
|||
#define NS_SECURE_BROWSER_UI_CID \
|
||||
{ 0xcc75499a, 0x1dd1, 0x11b2, {0x8a, 0x82, 0xca, 0x41, 0x0a, 0xc9, 0x07, 0xb8}}
|
||||
|
||||
class nsSecureBrowserUIImpl : public nsISecureBrowserUI
|
||||
, public nsIWebProgressListener
|
||||
, public nsSupportsWeakReference
|
||||
|
||||
class nsSecureBrowserUIImpl : public nsISecureBrowserUI,
|
||||
public nsIWebProgressListener,
|
||||
public nsSupportsWeakReference
|
||||
{
|
||||
friend class mozilla::ReentrancyGuard;
|
||||
|
||||
public:
|
||||
nsSecureBrowserUIImpl();
|
||||
|
||||
|
@ -31,15 +39,55 @@ public:
|
|||
protected:
|
||||
virtual ~nsSecureBrowserUIImpl() {};
|
||||
|
||||
// Do mixed content and tracking protection checks. May update mState.
|
||||
void CheckForBlockedContent();
|
||||
// Given some information about a request from an OnLocationChange event,
|
||||
// update mState and mTopLevelSecurityInfo.
|
||||
nsresult UpdateStateAndSecurityInfo(nsIChannel* channel, nsIURI* uri);
|
||||
|
||||
uint32_t mState;
|
||||
nsWeakPtr mWindow;
|
||||
nsWeakPtr mDocShell;
|
||||
nsCOMPtr<nsITransportSecurityInfo> mTopLevelSecurityInfo;
|
||||
nsCOMPtr<nsINetUtil> mIOService;
|
||||
nsCOMPtr<nsIURI> mCurrentURI;
|
||||
nsCOMPtr<nsISecurityEventSink> mToplevelEventSink;
|
||||
|
||||
enum lockIconState {
|
||||
lis_no_security,
|
||||
lis_broken_security,
|
||||
lis_mixed_security,
|
||||
lis_high_security
|
||||
};
|
||||
|
||||
lockIconState mNotifiedSecurityState;
|
||||
bool mNotifiedToplevelIsEV;
|
||||
|
||||
void ResetStateTracking();
|
||||
uint32_t mNewToplevelSecurityState;
|
||||
bool mNewToplevelIsEV;
|
||||
bool mNewToplevelSecurityStateKnown;
|
||||
bool mIsViewSource;
|
||||
|
||||
int32_t mDocumentRequestsInProgress;
|
||||
int32_t mSubRequestsBrokenSecurity;
|
||||
int32_t mSubRequestsNoSecurity;
|
||||
bool mCertUserOverridden;
|
||||
bool mRestoreSubrequests;
|
||||
bool mOnLocationChangeSeen;
|
||||
#ifdef DEBUG
|
||||
bool mEntered; // For ReentrancyGuard.
|
||||
#endif
|
||||
|
||||
static already_AddRefed<nsISupports> ExtractSecurityInfo(nsIRequest* aRequest);
|
||||
nsresult MapInternalToExternalState(uint32_t* aState, lockIconState lock, bool ev);
|
||||
void UpdateSecurityState(nsIRequest* aRequest, bool withNewLocation,
|
||||
bool withUpdateStatus);
|
||||
void TellTheWorld(nsIRequest* aRequest);
|
||||
|
||||
void EvaluateAndUpdateSecurityState(nsIRequest* aRequest, nsISupports *info,
|
||||
bool withNewLocation, bool withNewSink);
|
||||
void UpdateSubrequestMembers(nsISupports* securityInfo, nsIRequest* request);
|
||||
|
||||
void ObtainEventSink(nsIChannel *channel,
|
||||
nsCOMPtr<nsISecurityEventSink> &sink);
|
||||
|
||||
nsCOMPtr<nsITransportSecurityInfo> mSecInfo;
|
||||
nsCOMPtr<nsISupports> mCurrentToplevelSecurityInfo;
|
||||
|
||||
PLDHashTable mTransferringRequests;
|
||||
};
|
||||
|
||||
#endif // nsSecureBrowserUIImpl_h
|
||||
|
|
Загрузка…
Ссылка в новой задаче