blob: 154459a9bf138dffda3b095d0a4bbdff985bd8a3 [file] [log] [blame]
// Copyright 2022 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef PERMISSION_BROKER_DENY_VELL_KEYBOARD_DEVICE_RULE_H_
#define PERMISSION_BROKER_DENY_VELL_KEYBOARD_DEVICE_RULE_H_
#include "permission_broker/usb_subsystem_udev_rule.h"
namespace permission_broker {
// The Vell keyboard is not a true USB device that can be interacted with. This
// rule denies path access to the device.
class DenyVellKeyboardDeviceRule : public UsbSubsystemUdevRule {
public:
DenyVellKeyboardDeviceRule();
DenyVellKeyboardDeviceRule(const DenyVellKeyboardDeviceRule&) = delete;
DenyVellKeyboardDeviceRule& operator=(const DenyVellKeyboardDeviceRule&) =
delete;
~DenyVellKeyboardDeviceRule() override = default;
Result ProcessUsbDevice(struct udev_device* device) override;
};
} // namespace permission_broker
#endif // PERMISSION_BROKER_DENY_VELL_KEYBOARD_DEVICE_RULE_H_