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

Side by Side Diff: content/public/browser/resource_context.h

Issue 483523006: Check all settings when checking mic and camera access (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Build fix for Android. Created 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_ 5 #ifndef CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_
6 #define CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_ 6 #define CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 virtual scoped_ptr<net::ClientCertStore> CreateClientCertStore(); 49 virtual scoped_ptr<net::ClientCertStore> CreateClientCertStore();
50 50
51 // Create a platform KeygenHandler and pass it to |callback|. The |callback| 51 // Create a platform KeygenHandler and pass it to |callback|. The |callback|
52 // may be run synchronously. 52 // may be run synchronously.
53 virtual void CreateKeygenHandler( 53 virtual void CreateKeygenHandler(
54 uint32 key_size_in_bits, 54 uint32 key_size_in_bits,
55 const std::string& challenge_string, 55 const std::string& challenge_string,
56 const GURL& url, 56 const GURL& url,
57 const base::Callback<void(scoped_ptr<net::KeygenHandler>)>& callback); 57 const base::Callback<void(scoped_ptr<net::KeygenHandler>)>& callback);
58 58
59 // Returns true if microphone access is allowed for |origin|. Used to
60 // determine what level of authorization is given to |origin| to access
61 // resource metadata.
62 virtual bool AllowMicAccess(const GURL& origin) = 0;
63
64 // Returns true if web camera access is allowed for |origin|. Used to
65 // determine what level of authorization is given to |origin| to access
66 // resource metadata.
67 virtual bool AllowCameraAccess(const GURL& origin) = 0;
68
69 // Returns a callback that can be invoked to get a random salt 59 // Returns a callback that can be invoked to get a random salt
70 // string that is used for creating media device IDs. The salt 60 // string that is used for creating media device IDs. The salt
71 // should be stored in the current user profile and should be reset 61 // should be stored in the current user profile and should be reset
72 // if cookies are cleared. The default is an empty string. 62 // if cookies are cleared. The default is an empty string.
73 // 63 //
74 // It is safe to hold on to the callback returned and use it without 64 // It is safe to hold on to the callback returned and use it without
75 // regard to the lifetime of ResourceContext, although in general 65 // regard to the lifetime of ResourceContext, although in general
76 // you should not use it long after the profile has been destroyed. 66 // you should not use it long after the profile has been destroyed.
77 // 67 //
78 // TODO(joi): We don't think it should be unnecessary to use this 68 // TODO(joi): We don't think it should be unnecessary to use this
79 // after ResourceContext goes away. There is likely an underying bug 69 // after ResourceContext goes away. There is likely an underying bug
80 // in the lifetime of ProfileIOData vs. ResourceProcessHost, where 70 // in the lifetime of ProfileIOData vs. ResourceProcessHost, where
81 // sometimes ProfileIOData has gone away before RPH has finished 71 // sometimes ProfileIOData has gone away before RPH has finished
82 // being torn down (on the IO thread). The current interface that 72 // being torn down (on the IO thread). The current interface that
83 // allows using the salt object after ResourceContext has gone away 73 // allows using the salt object after ResourceContext has gone away
84 // was put in place to fix http://crbug.com/341211 but I intend to 74 // was put in place to fix http://crbug.com/341211 but I intend to
85 // try to figure out how the lifetime should be fixed properly. The 75 // try to figure out how the lifetime should be fixed properly. The
86 // original interface was just a method that returns a string. 76 // original interface was just a method that returns a string.
87 // 77 //
88 // TODO(perkj): Make this method pure virtual when crbug/315022 is 78 // TODO(perkj): Make this method pure virtual when crbug/315022 is
89 // fixed. 79 // fixed.
90 typedef base::Callback<std::string()> SaltCallback; 80 typedef base::Callback<std::string()> SaltCallback;
91 virtual SaltCallback GetMediaDeviceIDSalt(); 81 virtual SaltCallback GetMediaDeviceIDSalt();
92 }; 82 };
93 83
94 } // namespace content 84 } // namespace content
95 85
96 #endif // CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_ 86 #endif // CONTENT_PUBLIC_BROWSER_RESOURCE_CONTEXT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698