Skip to content

Commit

Permalink
ozone: Add all SteelSeries mice to keyboard blocklist
Browse files Browse the repository at this point in the history
SteelSeries kindly provided me with a list of vendor and product IDs for
all the mice they've released. They all have macro functionality that
can emit keystrokes, so the new heuristic for identifying imposter
keyboards won't work for them. Let's add them to the blocklist instead.

Change-Id: I02844b8fc913e01e9e0d9ea38d483f658bb3daed
Bug: b:232145537
Test: none, as I don't have any of the mice being added
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3639732
Reviewed-by: Sean O'Brien <seobrien@chromium.org>
Commit-Queue: Harry Cutts <hcutts@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1002240}
  • Loading branch information
HarryCutts authored and Chromium LUCI CQ committed May 11, 2022
1 parent 02f754b commit b474e3b
Showing 1 changed file with 147 additions and 5 deletions.
152 changes: 147 additions & 5 deletions ui/events/ozone/evdev/event_device_info.cc
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,10 @@ struct DeviceId {
};

constexpr auto kKeyboardBlocklist = base::MakeFixedFlatSet<DeviceId>({
{0x0111, 0x1830}, // SteelSeries Rival 3 Wireless (Bluetooth)
{0x0111, 0x183a}, // SteelSeries Aerox 3 Wireless (Bluetooth)
{0x0111, 0x1854}, // SteelSeries Aerox 5 Wireless (Bluetooth)
{0x0111, 0x185a}, // SteelSeries Aerox 9 Wireless (Bluetooth)
{0x03f0, 0xa407}, // HP X4000 Wireless Mouse
{0x045e, 0x0745}, // Microsoft Wireless Mobile Mouse 6000
{0x045e, 0x0821}, // Microsoft Surface Precision Mouse
Expand Down Expand Up @@ -78,23 +81,162 @@ constexpr auto kKeyboardBlocklist = base::MakeFixedFlatSet<DeviceId>({
{0x046d, 0xc093}, // Logitech M500s
{0x046d, 0xc534}, // Logitech M170
{0x046d, 0xc53e}, // Logitech Spotlight Presentation Remote (USB dongle)
{0x04b4, 0x121f}, // SteelSeries Ikari
{0x056e, 0x0134}, // Elecom Enelo IR LED Mouse 350
{0x056e, 0x0141}, // Elecom EPRIM Blue LED 5 button mouse 228
{0x056e, 0x0159}, // Elecom Blue LED Mouse 203
{0x05e0, 0x1200}, // Symbol Technologies / Zebra LS2208 barcode scanner
{0x0951, 0x1727}, // HyperX Pulsefire Haste Gaming Mouse
{0x0c45, 0x7403}, // RDing FootSwitch1F1
{0x1038, 0x1369}, // SteelSeries Sensei RAW Frost Blue
{0x1038, 0x1824}, // SteelSeries Rival 3 Wired
{0x1038, 0x1830}, // SteelSeries Rival 3 Wireless (USB dongle)
{0x1038, 0x0470}, // SteelSeries Reaper Edge
{0x1038, 0x0471}, // SteelSeries Rival Rescuer
{0x1038, 0x0472}, // SteelSeries Rival 150 net café
{0x1038, 0x0473}, // SteelSeries Sensei SP
{0x1038, 0x0475}, // SteelSeries Rival 160 retail
{0x1038, 0x0777}, // SteelSeries MO3
{0x1038, 0x1300}, // SteelSeries Kinzu
{0x1038, 0x1310}, // SteelSeries MO4
{0x1038, 0x1311}, // SteelSeries MO4v2
{0x1038, 0x1320}, // SteelSeries MO3v2
{0x1038, 0x1330}, // SteelSeries MO5
{0x1038, 0x1332}, // SteelSeries MO5 (Dongle)
{0x1038, 0x1356}, // SteelSeries Sensei Dark EDG
{0x1038, 0x1358}, // SteelSeries Sensei Dark Snake
{0x1038, 0x135a}, // SteelSeries Sensei Dell Alienware
{0x1038, 0x1360}, // SteelSeries Xai
{0x1038, 0x1361}, // SteelSeries Sensei
{0x1038, 0x1362}, // SteelSeries Sensei Raw Diablo III Mouse
{0x1038, 0x1364}, // SteelSeries Kana
{0x1038, 0x1366}, // SteelSeries Kinzu 2
{0x1038, 0x1369}, // SteelSeries Sensei Raw
{0x1038, 0x136b}, // SteelSeries MLG Sensei
{0x1038, 0x136d}, // SteelSeries Sensei Raw: GW2
{0x1038, 0x136f}, // SteelSeries Sensei Raw: CoD
{0x1038, 0x1370}, // SteelSeries Sensei Master
{0x1038, 0x1372}, // SteelSeries Sensei Master (Hub Controller)
{0x1038, 0x1373}, // SteelSeries Sensei Master (Flash Drive Controller)
{0x1038, 0x1374}, // SteelSeries Kana: CS:GO
{0x1038, 0x1376}, // SteelSeries Kana: DOTA
{0x1038, 0x1378}, // SteelSeries Kinzu v2.1
{0x1038, 0x137a}, // SteelSeries Kana Pro
{0x1038, 0x137c}, // SteelSeries Wireless Sensei
{0x1038, 0x137e}, // SteelSeries Wireless Sensei (Charge Stand)
{0x1038, 0x1380}, // SteelSeries World of Tank mouse
{0x1038, 0x1382}, // SteelSeries Sims Mouse
{0x1038, 0x1384}, // SteelSeries Rival
{0x1038, 0x1386}, // SteelSeries SIMS 4 mouse
{0x1038, 0x1388}, // SteelSeries Kinzu v3 Mouse
{0x1038, 0x1390}, // SteelSeries Sensei Raw Heroes of the Storm Mouse
{0x1038, 0x1392}, // SteelSeries Rival DOTA 2
{0x1038, 0x1394}, // SteelSeries Rival 300 CS:GO Fade Edition
{0x1038, 0x1396}, // SteelSeries Rival 300 Gaming Mouse
{0x1038, 0x1700}, // SteelSeries Rival 700
{0x1038, 0x1701}, // SteelSeries Rival 700 (Basic)
{0x1038, 0x1702}, // SteelSeries Rival 100 Gaming Mouse (ELM4 - A)
{0x1038, 0x1704}, // SteelSeries Rival 95 PC BANG
{0x1038, 0x1705}, // SteelSeries Rival 100 For Alienware
{0x1038, 0x1706}, // SteelSeries Rival 95
{0x1038, 0x1707}, // SteelSeries Rival 95 MSI edition
{0x1038, 0x1708}, // SteelSeries Rival 100 Gaming Mouse (PC Bang)
{0x1038, 0x1709}, // SteelSeries Rival 50 MSI edition
{0x1038, 0x170a}, // SteelSeries Rival 100 Dell China
{0x1038, 0x170b}, // SteelSeries Rival 100 DOTA 2 Mouse
{0x1038, 0x170c}, // SteelSeries Rival 100 DOTA 2 Mouse (Lenovo)
{0x1038, 0x170d}, // SteelSeries Rival 100 World of Tanks Mouse
{0x1038, 0x170e}, // SteelSeries Rival 500 (MBM)
{0x1038, 0x170f}, // SteelSeries Rival 500 (Basic)
{0x1038, 0x1710}, // SteelSeries Rival 300 Gaming Mouse
{0x1038, 0x1712}, // SteelSeries Rival 300 Fallout 4 Gaming Mouse
{0x1038, 0x1714}, // SteelSeries Rival 300 Predator Gaming Mouse
{0x1038, 0x1716}, // SteelSeries Rival 300 CS:GO Fade Edition
{0x1038, 0x1718}, // SteelSeries Rival 300 HP Omen
{0x1038, 0x171a}, // SteelSeries Rival 300 CS:GO Hyperbeast Edition
{0x1038, 0x171c}, // SteelSeries Rival 300 Evil Geniuses Edition
{0x1038, 0x171e}, // SteelSeries Rival 310 CSGO Howl
{0x1038, 0x171f}, // SteelSeries Rival 310 CSGO Howl (Basic)
{0x1038, 0x1720}, // SteelSeries Rival 310
{0x1038, 0x1721}, // SteelSeries Rival 310 (Basic)
{0x1038, 0x1722}, // SteelSeries Sensei 310
{0x1038, 0x1723}, // SteelSeries Sensei 310 (Basic)
{0x1038, 0x1724}, // SteelSeries Rival 600
{0x1038, 0x1725}, // SteelSeries Rival 600 (Basic)
{0x1038, 0x1726}, // SteelSeries Rival 650 Wireless
{0x1038, 0x1727}, // SteelSeries Rival 650 Wireless (Basic)
{0x1038, 0x1729}, // SteelSeries Rival 110 Gaming Mouse
{0x1038, 0x172b}, // SteelSeries Rival 650 Wireless (Wired)
{0x1038, 0x172c}, // SteelSeries Rival 650 Wireless (Basic for wired)
{0x1038, 0x172d}, // SteelSeries Rival 110 (Dell)
{0x1038, 0x172e}, // SteelSeries Rival 600 Dota 2
{0x1038, 0x172f}, // SteelSeries Rival 600 Dota 2 (Basic)
{0x1038, 0x1730}, // SteelSeries Rival 710
{0x1038, 0x1731}, // SteelSeries Rival 710 (Basic)
{0x1038, 0x1736}, // SteelSeries Rival 310 PUBG Edition
{0x1038, 0x1737}, // SteelSeries Rival 310 PUBG Edition (Basic)
{0x1038, 0x1800}, // SteelSeries Sensei Raw Optical
{0x1038, 0x1801}, // SteelSeries Sensei Raw Optical (Basic)
{0x1038, 0x1802}, // SteelSeries Sensei Raw Optical RGB
{0x1038, 0x1803}, // SteelSeries Sensei Raw Optical RGB (Basic)
{0x1038, 0x1810}, // SteelSeries Rival 300S
{0x1038, 0x1812}, // SteelSeries Rival 300S Dell Silver
{0x1038, 0x1814}, // SteelSeries Rival 105 (Kana v3) Gaming Mouse
{0x1038, 0x1816}, // SteelSeries Rival 106 Gaming Mouse
{0x1038, 0x1818}, // SteelSeries Rival 610 Wireless
{0x1038, 0x1819}, // SteelSeries Rival 610 Wireless (Basic)
{0x1038, 0x181a}, // SteelSeries Rival 610 Wireless (Wired)
{0x1038, 0x181b}, // SteelSeries Rival 610 Wireless (Basic for wired)
{0x1038, 0x181c}, // SteelSeries Rival 310 Wireless
{0x1038, 0x181d}, // SteelSeries Rival 310 Wireless (Basic)
{0x1038, 0x181e}, // SteelSeries Rival 310 Wireless (Wired)
{0x1038, 0x181f}, // SteelSeries Rival 310 Wireless (Basic for wired)
{0x1038, 0x1820}, // SteelSeries Rival 610
{0x1038, 0x1821}, // SteelSeries Rival 610 (Basic)
{0x1038, 0x1822}, // SteelSeries Sensei 610
{0x1038, 0x1823}, // SteelSeries Sensei 610 (Basic)
{0x1038, 0x1824}, // SteelSeries Rival 3
{0x1038, 0x1826}, // SteelSeries Sensei Raw Optical RGB v2
{0x1038, 0x1827}, // SteelSeries Sensei Raw Optical RGB v2 (Basic)
{0x1038, 0x1828}, // SteelSeries Radical Wireless
{0x1038, 0x1829}, // SteelSeries Radical Wireless (Basic)
{0x1038, 0x182a}, // SteelSeries Prime Rainbow Six Edition
{0x1038, 0x182b}, // SteelSeries Prime Rainbow Six Edition (Basic)
{0x1038, 0x182c}, // SteelSeries Prime+
{0x1038, 0x182d}, // SteelSeries Prime+ (Basic)
{0x1038, 0x182e}, // SteelSeries Prime
{0x1038, 0x182f}, // SteelSeries Prime (Basic)
{0x1038, 0x1830}, // SteelSeries Rival 3 Wireless
{0x1038, 0x1831}, // SteelSeries Rival 3 Wireless (Basic)
{0x1038, 0x1832}, // SteelSeries Sensei Ten
{0x1038, 0x1833}, // SteelSeries Sensei Ten (Basic)
{0x1038, 0x1834}, // SteelSeries Sensei Ten Neon Rider Edition
{0x1038, 0x1835}, // SteelSeries Sensei Ten Neon Rider Edition (Basic)
{0x1038, 0x1836}, // SteelSeries Aerox 3
{0x1038, 0x183a}, // SteelSeries Aerox 3 Wireless (USB dongle)
{0x1038, 0x1838}, // SteelSeries Aerox 3 Wireless (Dongle)
{0x1038, 0x1839}, // SteelSeries Aerox 3 Wireless (Basic for dongle)
{0x1038, 0x183a}, // SteelSeries Aerox 3 Wireless (Wired)
{0x1038, 0x183b}, // SteelSeries Aerox 3 Wireless (Basic for wired)
{0x1038, 0x183c}, // SteelSeries Rival 5
{0x1038, 0x183d}, // SteelSeries Rival 5 (Basic)
{0x1038, 0x183e}, // SteelSeries Rival 5 Destiny 2
{0x1038, 0x183f}, // SteelSeries Rival 5 Destiny 2 (Basic)
{0x1038, 0x1840}, // SteelSeries Prime Wireless (Dongle)
{0x1038, 0x1841}, // SteelSeries Prime Wireless (Basic for dongle)
{0x1038, 0x1842}, // SteelSeries Prime Wireless (Wired)
{0x1038, 0x1843}, // SteelSeries Prime Wireless (Basic for wired)
{0x1038, 0x1848}, // SteelSeries Prime Mini Wireless (Dongle)
{0x1038, 0x184a}, // SteelSeries Prime Mini Wireless (Wired)
{0x1038, 0x184c}, // SteelSeries Rival 3 (NVIDIA Support - Standard)
{0x1038, 0x184d}, // SteelSeries Prime Mini
{0x1038, 0x1850}, // SteelSeries Aerox 5
{0x1038, 0x1852}, // SteelSeries Aerox 5 Wireless (Dongle)
{0x1038, 0x1854}, // SteelSeries Aerox 5 Wireless (Wired)
{0x1038, 0x1856}, // SteelSeries Prime CS:GO Neo Noir
{0x1038, 0x1858}, // SteelSeries Aerox 9 WL (Dongle)
{0x1038, 0x185a}, // SteelSeries Aerox 9 WL (Wired)
{0x1050, 0x0010}, // Yubico.com Yubikey
{0x1050, 0x0407}, // Yubico.com Yubikey 4 OTP+U2F+CCID
{0x1532, 0x007a}, // Razer Viper Ultimate (Wired)
{0x1532, 0x007b}, // Razer Viper Ultimate (Wireless)
{0x17ef, 0x60e4}, // Lenovo Legion M300 RGB Gaming Mouse
// (which can send keystrokes as part of macros.)
{0x17ef, 0x6123}, // Lenovo USB-C Wired Compact Mouse
{0x1b1c, 0x1b7a}, // Corsair Sabre Pro Champion Gaming Mouse
{0x1b1c, 0x1b94}, // Corsair Katar Pro Wireless (USB dongle)
Expand Down

0 comments on commit b474e3b

Please sign in to comment.