LCOV - code coverage report
Current view: top level - udev - udev-event.h (source / functions) Hit Total Coverage
Test: main_coverage.info Lines: 0 3 0.0 %
Date: 2019-08-22 15:41:25 Functions: 0 2 0.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: GPL-2.0+ */
       2             : #pragma once
       3             : 
       4             : /*
       5             :  * Copyright © 2003 Greg Kroah-Hartman <greg@kroah.com>
       6             :  */
       7             : 
       8             : #include "sd-device.h"
       9             : #include "sd-netlink.h"
      10             : 
      11             : #include "hashmap.h"
      12             : #include "macro.h"
      13             : #include "udev-rules.h"
      14             : #include "udev-util.h"
      15             : #include "util.h"
      16             : 
      17             : #define READ_END  0
      18             : #define WRITE_END 1
      19             : 
      20             : typedef struct UdevEvent {
      21             :         sd_device *dev;
      22             :         sd_device *dev_parent;
      23             :         sd_device *dev_db_clone;
      24             :         char *name;
      25             :         char *program_result;
      26             :         mode_t mode;
      27             :         uid_t uid;
      28             :         gid_t gid;
      29             :         OrderedHashmap *seclabel_list;
      30             :         OrderedHashmap *run_list;
      31             :         usec_t exec_delay_usec;
      32             :         usec_t birth_usec;
      33             :         sd_netlink *rtnl;
      34             :         unsigned builtin_run;
      35             :         unsigned builtin_ret;
      36             :         UdevRuleEscapeType esc:8;
      37             :         bool inotify_watch:1;
      38             :         bool inotify_watch_final:1;
      39             :         bool group_final:1;
      40             :         bool owner_final:1;
      41             :         bool mode_final:1;
      42             :         bool name_final:1;
      43             :         bool devlink_final:1;
      44             :         bool run_final:1;
      45             : } UdevEvent;
      46             : 
      47             : UdevEvent *udev_event_new(sd_device *dev, usec_t exec_delay_usec, sd_netlink *rtnl);
      48             : UdevEvent *udev_event_free(UdevEvent *event);
      49           0 : DEFINE_TRIVIAL_CLEANUP_FUNC(UdevEvent*, udev_event_free);
      50             : 
      51             : ssize_t udev_event_apply_format(UdevEvent *event,
      52             :                                 const char *src, char *dest, size_t size,
      53             :                                 bool replace_whitespace);
      54             : int udev_check_format(const char *value, size_t *offset, const char **hint);
      55             : int udev_event_spawn(UdevEvent *event,
      56             :                      usec_t timeout_usec,
      57             :                      bool accept_failure,
      58             :                      const char *cmd, char *result, size_t ressize);
      59             : int udev_event_execute_rules(UdevEvent *event,
      60             :                              usec_t timeout_usec,
      61             :                              Hashmap *properties_list,
      62             :                              UdevRules *rules);
      63             : void udev_event_execute_run(UdevEvent *event, usec_t timeout_usec);
      64             : 
      65           0 : static inline usec_t udev_warn_timeout(usec_t timeout_usec) {
      66           0 :         return DIV_ROUND_UP(timeout_usec, 3);
      67             : }

Generated by: LCOV version 1.14