OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 module device.usb; | 5 module device.usb; |
6 | 6 |
7 import "device.mojom"; | 7 import "device.mojom"; |
8 | 8 |
9 interface PermissionProvider { | 9 interface PermissionProvider { |
10 // Filters a set of |requested_devices| down to the set of |allowed_guids| | 10 // Filters a set of |requested_devices| down to the set of |allowed_guids| |
11 // that should be accessible to clients of the DeviceManager instance. | 11 // that should be accessible to clients of the DeviceManager instance. |
12 HasDevicePermission(array<DeviceInfo> requested_devices) | 12 HasDevicePermission(array<DeviceInfo> requested_devices) |
13 => (array<string> allowed_guids); | 13 => (array<string> allowed_guids); |
| 14 |
| 15 // Returns whether or not the client has permission to access |
| 16 // |requested_configuration| on |device|. |
| 17 HasConfigurationPermission(uint8 requested_configuration, |
| 18 DeviceInfo device) => (bool allowed); |
| 19 |
| 20 // Returns whether or not the client has permission to access |
| 21 // |requested_interface| on |device| when it is in configuration |
| 22 // |configuration_value|. |
| 23 HasInterfacePermission(uint8 requested_interface, |
| 24 uint8 configuration_value, |
| 25 DeviceInfo device) => (bool allowed); |
| 26 |
| 27 // Requests a new binding to this service. |
| 28 Bind(PermissionProvider& request); |
14 }; | 29 }; |
OLD | NEW |