1
0
Fork 0
tuned/tuned/hardware/device_matcher_udev.py
Jaroslav Škarvada 0e4b67451c
udev: fix possible traceback in device matcher
Resolves: RHEL-97087

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2025-07-15 10:13:25 +02:00

27 lines
581 B
Python

from . import device_matcher
import re
__all__ = ["DeviceMatcherUdev"]
class DeviceMatcherUdev(device_matcher.DeviceMatcher):
def match(self, regex, device):
"""
Match a device against the udev regex in tuning profiles.
device is a pyudev.Device object
"""
properties = ''
try:
items = device.properties.items()
except AttributeError:
try:
items = device.items()
except AttributeError:
return False
for key, val in sorted(list(items)):
properties += key + '=' + val + '\n'
return re.search(regex, properties, re.MULTILINE) is not None