mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
f298af1bab
Note that this patch changes the semantics of javascript.enabled so that changes to the pref do not apply to compartments that have already been created. This is a significant change, but is necessary to support the new domain policy API. After one cycle or so, we'll rip out the old API.
53 lines
1.3 KiB
C++
53 lines
1.3 KiB
C++
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/* vim: set ts=8 sts=4 et sw=4 tw=80: */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef DomainPolicy_h__
|
|
#define DomainPolicy_h__
|
|
|
|
#include "nsIDomainPolicy.h"
|
|
#include "nsTHashtable.h"
|
|
#include "nsURIHashKey.h"
|
|
|
|
namespace mozilla {
|
|
|
|
// The name "DomainPolicy" conflicts with some of the old-style policy machinery
|
|
// in nsScriptSecurityManager.cpp, which needs to #include this file. So we
|
|
// temporarily use a sub-namespace until that machinery goes away in bug 913734.
|
|
namespace hotness {
|
|
|
|
class DomainPolicy : public nsIDomainPolicy
|
|
{
|
|
public:
|
|
NS_DECL_ISUPPORTS
|
|
NS_DECL_NSIDOMAINPOLICY
|
|
DomainPolicy();
|
|
virtual ~DomainPolicy();
|
|
|
|
private:
|
|
nsCOMPtr<nsIDomainSet> mBlacklist;
|
|
nsCOMPtr<nsIDomainSet> mSuperBlacklist;
|
|
nsCOMPtr<nsIDomainSet> mWhitelist;
|
|
nsCOMPtr<nsIDomainSet> mSuperWhitelist;
|
|
};
|
|
|
|
class DomainSet : public nsIDomainSet
|
|
{
|
|
public:
|
|
NS_DECL_ISUPPORTS
|
|
NS_DECL_NSIDOMAINSET
|
|
|
|
DomainSet() {}
|
|
virtual ~DomainSet() {}
|
|
|
|
protected:
|
|
nsTHashtable<nsURIHashKey> mHashTable;
|
|
};
|
|
|
|
} /* namespace hotness */
|
|
} /* namespace mozilla */
|
|
|
|
#endif /* DomainPolicy_h__ */
|