Branch data Line data Source code
1 : : /* SPDX-License-Identifier: GPL-2.0+ */ 2 : : #pragma once 3 : : 4 : : #include "hashmap.h" 5 : : #include "time-util.h" 6 : : #include "udev-util.h" 7 : : 8 : : typedef struct UdevRules UdevRules; 9 : : typedef struct UdevEvent UdevEvent; 10 : : 11 : : typedef enum { 12 : : ESCAPE_UNSET, 13 : : ESCAPE_NONE, /* OPTIONS="string_escape=none" */ 14 : : ESCAPE_REPLACE, /* OPTIONS="string_escape=replace" */ 15 : : _ESCAPE_TYPE_MAX, 16 : : _ESCAPE_TYPE_INVALID = -1 17 : : } UdevRuleEscapeType; 18 : : 19 : : int udev_rules_new(UdevRules **ret_rules, ResolveNameTiming resolve_name_timing); 20 : : UdevRules *udev_rules_free(UdevRules *rules); 21 [ # # ]: 0 : DEFINE_TRIVIAL_CLEANUP_FUNC(UdevRules*, udev_rules_free); 22 : : 23 : : bool udev_rules_check_timestamp(UdevRules *rules); 24 : : int udev_rules_apply_to_event(UdevRules *rules, UdevEvent *event, 25 : : usec_t timeout_usec, 26 : : Hashmap *properties_list); 27 : : int udev_rules_apply_static_dev_perms(UdevRules *rules);