Index: chrome/browser/usb/web_usb_permission_provider.cc |
diff --git a/chrome/browser/usb/web_usb_permission_provider.cc b/chrome/browser/usb/web_usb_permission_provider.cc |
index 569368958365f07f27a147eed6f20f6c33e19bc4..4deb8037aa72d7c94e1dd531b4d13d9821c3f95f 100644 |
--- a/chrome/browser/usb/web_usb_permission_provider.cc |
+++ b/chrome/browser/usb/web_usb_permission_provider.cc |
@@ -17,7 +17,6 @@ |
#include "content/public/browser/render_frame_host.h" |
#include "content/public/browser/web_contents.h" |
#include "device/usb/usb_device.h" |
-#include "device/usb/webusb_descriptors.h" |
using content::RenderFrameHost; |
using content::WebContents; |
@@ -27,33 +26,14 @@ bool WebUSBPermissionProvider::HasDevicePermission( |
UsbChooserContext* chooser_context, |
const GURL& requesting_origin, |
const GURL& embedding_origin, |
- bool is_embedded_frame, |
scoped_refptr<const device::UsbDevice> device) { |
DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
if (UsbBlocklist::Get().IsExcluded(device)) |
return false; |
- if (!chooser_context->HasDevicePermission(requesting_origin, embedding_origin, |
- device)) { |
- return false; |
- } |
- |
- // On Android it is not possible to read the WebUSB descriptors until Chrome |
- // has been granted permission to open it. Instead we grant provisional access |
- // to the device and perform the allowed origins check when the client tries |
- // to open it. |
- if (!device->permission_granted()) |
- return true; |
- |
- // Embedded frames must have their origin in the list provided by the device. |
- if (is_embedded_frame) { |
- return device::FindInWebUsbAllowedOrigins(device->webusb_allowed_origins(), |
- requesting_origin, base::nullopt, |
- base::nullopt); |
- } |
- |
- return true; |
+ return chooser_context->HasDevicePermission(requesting_origin, |
+ embedding_origin, device); |
} |
WebUSBPermissionProvider::WebUSBPermissionProvider( |
@@ -83,47 +63,7 @@ bool WebUSBPermissionProvider::HasDevicePermission( |
return HasDevicePermission( |
UsbChooserContextFactory::GetForProfile(profile), |
render_frame_host_->GetLastCommittedURL().GetOrigin(), |
- main_frame->GetLastCommittedURL().GetOrigin(), |
- render_frame_host_ != main_frame, device); |
-} |
- |
-bool WebUSBPermissionProvider::HasConfigurationPermission( |
- uint8_t requested_configuration_value, |
- scoped_refptr<const device::UsbDevice> device) const { |
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
- |
- // Embedded frames may only access configurations if their origin in the list |
- // provided by the device. |
- RenderFrameHost* main_frame = |
- WebContents::FromRenderFrameHost(render_frame_host_)->GetMainFrame(); |
- if (render_frame_host_ != main_frame) { |
- return device::FindInWebUsbAllowedOrigins( |
- device->webusb_allowed_origins(), |
- render_frame_host_->GetLastCommittedURL().GetOrigin(), |
- requested_configuration_value, base::nullopt); |
- } |
- |
- return true; |
-} |
- |
-bool WebUSBPermissionProvider::HasFunctionPermission( |
- uint8_t requested_function, |
- uint8_t configuration_value, |
- scoped_refptr<const device::UsbDevice> device) const { |
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
- |
- // Embedded frames may only access configurations if their origin in the list |
- // provided by the device. |
- RenderFrameHost* main_frame = |
- WebContents::FromRenderFrameHost(render_frame_host_)->GetMainFrame(); |
- if (render_frame_host_ != main_frame) { |
- return device::FindInWebUsbAllowedOrigins( |
- device->webusb_allowed_origins(), |
- render_frame_host_->GetLastCommittedURL().GetOrigin(), |
- configuration_value, requested_function); |
- } |
- |
- return true; |
+ main_frame->GetLastCommittedURL().GetOrigin(), device); |
} |
void WebUSBPermissionProvider::IncrementConnectionCount() { |