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

Unified Diff: chrome/browser/extensions/api/api_resource.h

Issue 10919201: Make sure that a given app/extension requests only its own resources. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Improve tests; fix merge conflicts. Created 8 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/extensions/api/api_resource.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/api/api_resource.h
diff --git a/chrome/browser/extensions/api/api_resource.h b/chrome/browser/extensions/api/api_resource.h
index 86b9180d466565c5f0d8b371fc0459041f12d594..1a38cceb1a680d0c7318ffb2a94a726a4b762467 100644
--- a/chrome/browser/extensions/api/api_resource.h
+++ b/chrome/browser/extensions/api/api_resource.h
@@ -7,6 +7,7 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
+#include "chrome/common/extensions/extension.h"
namespace extensions {
@@ -19,12 +20,25 @@ class ApiResource {
public:
virtual ~ApiResource();
+ const std::string& owner_extension_id() const {
+ return owner_extension_id_;
+ }
+
protected:
- ApiResource(ApiResourceEventNotifier* event_notifier);
+ ApiResource(const std::string& owner_extension_id,
+ ApiResourceEventNotifier* event_notifier);
ApiResourceEventNotifier* event_notifier() const;
private:
+ // The extension that owns this resource. This could be derived from
+ // event_notifier, but that's a little too cute; to make future code
+ // maintenance easier, we'll require callers to explicitly specify the owner,
+ // and for now we'll assert that the owner implied by the event_notifier is
+ // consistent with the explicit one.
+ const std::string& owner_extension_id_;
+
+ // The object that lets this resource report events to the owner application.
scoped_refptr<ApiResourceEventNotifier> event_notifier_;
DISALLOW_COPY_AND_ASSIGN(ApiResource);
« no previous file with comments | « no previous file | chrome/browser/extensions/api/api_resource.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698