libudev: several trivial cleanups (#37106)
This commit is contained in:
@@ -6,5 +6,5 @@
|
||||
|
||||
struct udev_device;
|
||||
|
||||
struct udev_device *udev_device_new(struct udev *udev, sd_device *device);
|
||||
sd_device *udev_device_get_sd_device(struct udev_device *udev_device);
|
||||
struct udev_device* udev_device_new(struct udev *udev, sd_device *device);
|
||||
sd_device* udev_device_get_sd_device(struct udev_device *udev_device);
|
||||
|
||||
@@ -120,7 +120,7 @@ _public_ dev_t udev_device_get_devnum(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the driver name string, or #NULL if there is no driver attached.
|
||||
**/
|
||||
_public_ const char *udev_device_get_driver(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_driver(struct udev_device *udev_device) {
|
||||
const char *driver;
|
||||
int r;
|
||||
|
||||
@@ -141,7 +141,7 @@ _public_ const char *udev_device_get_driver(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the devtype name of the udev device, or #NULL if it cannot be determined
|
||||
**/
|
||||
_public_ const char *udev_device_get_devtype(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_devtype(struct udev_device *udev_device) {
|
||||
const char *devtype;
|
||||
int r;
|
||||
|
||||
@@ -165,7 +165,7 @@ _public_ const char *udev_device_get_devtype(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the subsystem name of the udev device, or #NULL if it cannot be determined
|
||||
**/
|
||||
_public_ const char *udev_device_get_subsystem(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_subsystem(struct udev_device *udev_device) {
|
||||
const char *subsystem;
|
||||
int r;
|
||||
|
||||
@@ -187,7 +187,7 @@ _public_ const char *udev_device_get_subsystem(struct udev_device *udev_device)
|
||||
*
|
||||
* Returns: the property string, or #NULL if there is no such property.
|
||||
**/
|
||||
_public_ const char *udev_device_get_property_value(struct udev_device *udev_device, const char *key) {
|
||||
_public_ const char* udev_device_get_property_value(struct udev_device *udev_device, const char *key) {
|
||||
const char *value;
|
||||
int r;
|
||||
|
||||
@@ -200,7 +200,7 @@ _public_ const char *udev_device_get_property_value(struct udev_device *udev_dev
|
||||
return value;
|
||||
}
|
||||
|
||||
struct udev_device *udev_device_new(struct udev *udev, sd_device *device) {
|
||||
struct udev_device* udev_device_new(struct udev *udev, sd_device *device) {
|
||||
_cleanup_(udev_list_freep) struct udev_list *properties = NULL, *all_tags = NULL, *current_tags = NULL, *sysattrs = NULL, *devlinks = NULL;
|
||||
struct udev_device *udev_device;
|
||||
|
||||
@@ -254,7 +254,7 @@ struct udev_device *udev_device_new(struct udev *udev, sd_device *device) {
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it does not exist
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_new_from_syspath(struct udev *udev, const char *syspath) {
|
||||
_public_ struct udev_device* udev_device_new_from_syspath(struct udev *udev, const char *syspath) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
@@ -281,7 +281,7 @@ _public_ struct udev_device *udev_device_new_from_syspath(struct udev *udev, con
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it does not exist
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_new_from_devnum(struct udev *udev, char type, dev_t devnum) {
|
||||
_public_ struct udev_device* udev_device_new_from_devnum(struct udev *udev, char type, dev_t devnum) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
@@ -310,7 +310,7 @@ _public_ struct udev_device *udev_device_new_from_devnum(struct udev *udev, char
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it does not exist
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_new_from_device_id(struct udev *udev, const char *id) {
|
||||
_public_ struct udev_device* udev_device_new_from_device_id(struct udev *udev, const char *id) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
@@ -336,7 +336,7 @@ _public_ struct udev_device *udev_device_new_from_device_id(struct udev *udev, c
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it does not exist
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_new_from_subsystem_sysname(struct udev *udev, const char *subsystem, const char *sysname) {
|
||||
_public_ struct udev_device* udev_device_new_from_subsystem_sysname(struct udev *udev, const char *subsystem, const char *sysname) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
@@ -361,7 +361,7 @@ _public_ struct udev_device *udev_device_new_from_subsystem_sysname(struct udev
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it does not exist
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_new_from_environment(struct udev *udev) {
|
||||
_public_ struct udev_device* udev_device_new_from_environment(struct udev *udev) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
@@ -372,7 +372,7 @@ _public_ struct udev_device *udev_device_new_from_environment(struct udev *udev)
|
||||
return udev_device_new(udev, device);
|
||||
}
|
||||
|
||||
static struct udev_device *device_new_from_parent(struct udev_device *child) {
|
||||
static struct udev_device* device_new_from_parent(struct udev_device *child) {
|
||||
sd_device *parent;
|
||||
int r;
|
||||
|
||||
@@ -403,7 +403,7 @@ static struct udev_device *device_new_from_parent(struct udev_device *child) {
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, if it no parent exist.
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_get_parent(struct udev_device *udev_device) {
|
||||
_public_ struct udev_device* udev_device_get_parent(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (!udev_device->parent_set) {
|
||||
@@ -436,7 +436,11 @@ _public_ struct udev_device *udev_device_get_parent(struct udev_device *udev_dev
|
||||
*
|
||||
* Returns: a new udev device, or #NULL if no matching parent exists.
|
||||
**/
|
||||
_public_ struct udev_device *udev_device_get_parent_with_subsystem_devtype(struct udev_device *udev_device, const char *subsystem, const char *devtype) {
|
||||
_public_ struct udev_device* udev_device_get_parent_with_subsystem_devtype(
|
||||
struct udev_device *udev_device,
|
||||
const char *subsystem,
|
||||
const char *devtype) {
|
||||
|
||||
sd_device *parent;
|
||||
int r;
|
||||
|
||||
@@ -467,13 +471,13 @@ _public_ struct udev_device *udev_device_get_parent_with_subsystem_devtype(struc
|
||||
*
|
||||
* Returns: the udev library context
|
||||
**/
|
||||
_public_ struct udev *udev_device_get_udev(struct udev_device *udev_device) {
|
||||
_public_ struct udev* udev_device_get_udev(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
return udev_device->udev;
|
||||
}
|
||||
|
||||
static struct udev_device *udev_device_free(struct udev_device *udev_device) {
|
||||
static struct udev_device* udev_device_free(struct udev_device *udev_device) {
|
||||
assert(udev_device);
|
||||
|
||||
sd_device_unref(udev_device->device);
|
||||
@@ -517,7 +521,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_UNREF_FUNC(struct udev_device, udev_device, udev_devic
|
||||
*
|
||||
* Returns: the devpath of the udev device
|
||||
**/
|
||||
_public_ const char *udev_device_get_devpath(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_devpath(struct udev_device *udev_device) {
|
||||
const char *devpath;
|
||||
int r;
|
||||
|
||||
@@ -539,7 +543,7 @@ _public_ const char *udev_device_get_devpath(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the sys path of the udev device
|
||||
**/
|
||||
_public_ const char *udev_device_get_syspath(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_syspath(struct udev_device *udev_device) {
|
||||
const char *syspath;
|
||||
int r;
|
||||
|
||||
@@ -560,7 +564,7 @@ _public_ const char *udev_device_get_syspath(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the name string of the device
|
||||
**/
|
||||
_public_ const char *udev_device_get_sysname(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_sysname(struct udev_device *udev_device) {
|
||||
const char *sysname;
|
||||
int r;
|
||||
|
||||
@@ -581,7 +585,7 @@ _public_ const char *udev_device_get_sysname(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the trailing number string of the device name
|
||||
**/
|
||||
_public_ const char *udev_device_get_sysnum(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_sysnum(struct udev_device *udev_device) {
|
||||
const char *sysnum;
|
||||
int r;
|
||||
|
||||
@@ -605,7 +609,7 @@ _public_ const char *udev_device_get_sysnum(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the device node file name of the udev device, or #NULL if no device node exists
|
||||
**/
|
||||
_public_ const char *udev_device_get_devnode(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_devnode(struct udev_device *udev_device) {
|
||||
const char *devnode;
|
||||
int r;
|
||||
|
||||
@@ -631,7 +635,7 @@ _public_ const char *udev_device_get_devnode(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the first entry of the device node link list
|
||||
**/
|
||||
_public_ struct udev_list_entry *udev_device_get_devlinks_list_entry(struct udev_device *udev_device) {
|
||||
_public_ struct udev_list_entry* udev_device_get_devlinks_list_entry(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (device_get_devlinks_generation(udev_device->device) != udev_device->devlinks_generation ||
|
||||
@@ -661,7 +665,7 @@ _public_ struct udev_list_entry *udev_device_get_devlinks_list_entry(struct udev
|
||||
*
|
||||
* Returns: the first entry of the property list
|
||||
**/
|
||||
_public_ struct udev_list_entry *udev_device_get_properties_list_entry(struct udev_device *udev_device) {
|
||||
_public_ struct udev_list_entry* udev_device_get_properties_list_entry(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (device_get_properties_generation(udev_device->device) != udev_device->properties_generation ||
|
||||
@@ -689,7 +693,7 @@ _public_ struct udev_list_entry *udev_device_get_properties_list_entry(struct ud
|
||||
*
|
||||
* Returns: the kernel action value, or #NULL if there is no action value available.
|
||||
**/
|
||||
_public_ const char *udev_device_get_action(struct udev_device *udev_device) {
|
||||
_public_ const char* udev_device_get_action(struct udev_device *udev_device) {
|
||||
sd_device_action_t action;
|
||||
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
@@ -735,7 +739,7 @@ _public_ unsigned long long int udev_device_get_usec_since_initialized(struct ud
|
||||
*
|
||||
* Returns: the content of a sys attribute file, or #NULL if there is no sys attribute value.
|
||||
**/
|
||||
_public_ const char *udev_device_get_sysattr_value(struct udev_device *udev_device, const char *sysattr) {
|
||||
_public_ const char* udev_device_get_sysattr_value(struct udev_device *udev_device, const char *sysattr) {
|
||||
const char *value;
|
||||
int r;
|
||||
|
||||
@@ -780,7 +784,7 @@ _public_ int udev_device_set_sysattr_value(struct udev_device *udev_device, cons
|
||||
*
|
||||
* Returns: the first entry of the property list
|
||||
**/
|
||||
_public_ struct udev_list_entry *udev_device_get_sysattr_list_entry(struct udev_device *udev_device) {
|
||||
_public_ struct udev_list_entry* udev_device_get_sysattr_list_entry(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (!udev_device->sysattrs_read) {
|
||||
@@ -832,7 +836,7 @@ _public_ int udev_device_get_is_initialized(struct udev_device *udev_device) {
|
||||
*
|
||||
* Returns: the first entry of the tag list
|
||||
**/
|
||||
_public_ struct udev_list_entry *udev_device_get_tags_list_entry(struct udev_device *udev_device) {
|
||||
_public_ struct udev_list_entry* udev_device_get_tags_list_entry(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (device_get_tags_generation(udev_device->device) != udev_device->all_tags_generation ||
|
||||
@@ -850,7 +854,7 @@ _public_ struct udev_list_entry *udev_device_get_tags_list_entry(struct udev_dev
|
||||
return udev_list_get_entry(udev_device->all_tags);
|
||||
}
|
||||
|
||||
_public_ struct udev_list_entry *udev_device_get_current_tags_list_entry(struct udev_device *udev_device) {
|
||||
_public_ struct udev_list_entry* udev_device_get_current_tags_list_entry(struct udev_device *udev_device) {
|
||||
assert_return_errno(udev_device, NULL, EINVAL);
|
||||
|
||||
if (device_get_tags_generation(udev_device->device) != udev_device->current_tags_generation ||
|
||||
@@ -889,7 +893,7 @@ _public_ int udev_device_has_current_tag(struct udev_device *udev_device, const
|
||||
return sd_device_has_current_tag(udev_device->device, tag) > 0;
|
||||
}
|
||||
|
||||
sd_device *udev_device_get_sd_device(struct udev_device *udev_device) {
|
||||
sd_device* udev_device_get_sd_device(struct udev_device *udev_device) {
|
||||
assert(udev_device);
|
||||
|
||||
return udev_device->device;
|
||||
|
||||
@@ -49,7 +49,7 @@ struct udev_enumerate {
|
||||
*
|
||||
* Returns: an enumeration context.
|
||||
**/
|
||||
_public_ struct udev_enumerate *udev_enumerate_new(struct udev *udev) {
|
||||
_public_ struct udev_enumerate* udev_enumerate_new(struct udev *udev) {
|
||||
_cleanup_(sd_device_enumerator_unrefp) sd_device_enumerator *e = NULL;
|
||||
_cleanup_(udev_list_freep) struct udev_list *list = NULL;
|
||||
struct udev_enumerate *udev_enumerate;
|
||||
@@ -81,7 +81,7 @@ _public_ struct udev_enumerate *udev_enumerate_new(struct udev *udev) {
|
||||
return udev_enumerate;
|
||||
}
|
||||
|
||||
static struct udev_enumerate *udev_enumerate_free(struct udev_enumerate *udev_enumerate) {
|
||||
static struct udev_enumerate* udev_enumerate_free(struct udev_enumerate *udev_enumerate) {
|
||||
assert(udev_enumerate);
|
||||
|
||||
udev_list_free(udev_enumerate->devices_list);
|
||||
@@ -117,7 +117,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_UNREF_FUNC(struct udev_enumerate, udev_enumerate, udev
|
||||
*
|
||||
* Returns: a pointer to the context.
|
||||
*/
|
||||
_public_ struct udev *udev_enumerate_get_udev(struct udev_enumerate *udev_enumerate) {
|
||||
_public_ struct udev* udev_enumerate_get_udev(struct udev_enumerate *udev_enumerate) {
|
||||
assert_return_errno(udev_enumerate, NULL, EINVAL);
|
||||
|
||||
return udev_enumerate->udev;
|
||||
@@ -131,7 +131,7 @@ _public_ struct udev *udev_enumerate_get_udev(struct udev_enumerate *udev_enumer
|
||||
*
|
||||
* Returns: a udev_list_entry.
|
||||
*/
|
||||
_public_ struct udev_list_entry *udev_enumerate_get_list_entry(struct udev_enumerate *udev_enumerate) {
|
||||
_public_ struct udev_list_entry* udev_enumerate_get_list_entry(struct udev_enumerate *udev_enumerate) {
|
||||
struct udev_list_entry *e;
|
||||
|
||||
assert_return_errno(udev_enumerate, NULL, EINVAL);
|
||||
|
||||
@@ -34,7 +34,7 @@ struct udev_hwdb {
|
||||
*
|
||||
* Returns: a hwdb context.
|
||||
**/
|
||||
_public_ struct udev_hwdb *udev_hwdb_new(struct udev *udev) {
|
||||
_public_ struct udev_hwdb* udev_hwdb_new(struct udev *udev) {
|
||||
_cleanup_(udev_list_freep) struct udev_list *list = NULL;
|
||||
_cleanup_(sd_hwdb_unrefp) sd_hwdb *hwdb_internal = NULL;
|
||||
struct udev_hwdb *hwdb;
|
||||
@@ -61,7 +61,7 @@ _public_ struct udev_hwdb *udev_hwdb_new(struct udev *udev) {
|
||||
return hwdb;
|
||||
}
|
||||
|
||||
static struct udev_hwdb *udev_hwdb_free(struct udev_hwdb *hwdb) {
|
||||
static struct udev_hwdb* udev_hwdb_free(struct udev_hwdb *hwdb) {
|
||||
assert(hwdb);
|
||||
|
||||
sd_hwdb_unref(hwdb->hwdb);
|
||||
@@ -102,7 +102,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_UNREF_FUNC(struct udev_hwdb, udev_hwdb, udev_hwdb_free
|
||||
*
|
||||
* Returns: a udev_list_entry.
|
||||
*/
|
||||
_public_ struct udev_list_entry *udev_hwdb_get_properties_list_entry(struct udev_hwdb *hwdb, const char *modalias, unsigned flags) {
|
||||
_public_ struct udev_list_entry* udev_hwdb_get_properties_list_entry(struct udev_hwdb *hwdb, const char *modalias, unsigned flags) {
|
||||
const char *key, *value;
|
||||
struct udev_list_entry *e;
|
||||
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
|
||||
struct udev_list;
|
||||
|
||||
struct udev_list *udev_list_new(bool unique);
|
||||
struct udev_list* udev_list_new(bool unique);
|
||||
void udev_list_cleanup(struct udev_list *list);
|
||||
struct udev_list *udev_list_free(struct udev_list *list);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_list *, udev_list_free);
|
||||
struct udev_list* udev_list_free(struct udev_list *list);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_list*, udev_list_free);
|
||||
|
||||
struct udev_list_entry *udev_list_get_entry(struct udev_list *list);
|
||||
struct udev_list_entry *udev_list_entry_add(struct udev_list *list, const char *name, const char *value);
|
||||
struct udev_list_entry* udev_list_get_entry(struct udev_list *list);
|
||||
struct udev_list_entry* udev_list_entry_add(struct udev_list *list, const char *name, const char *value);
|
||||
|
||||
+25
-43
@@ -4,7 +4,6 @@
|
||||
#include "hashmap.h"
|
||||
#include "libudev-list-internal.h"
|
||||
#include "list.h"
|
||||
#include "sort-util.h"
|
||||
|
||||
/**
|
||||
* SECTION:libudev-list
|
||||
@@ -34,7 +33,7 @@ struct udev_list {
|
||||
bool uptodate:1;
|
||||
};
|
||||
|
||||
static struct udev_list_entry *udev_list_entry_free(struct udev_list_entry *entry) {
|
||||
static struct udev_list_entry* udev_list_entry_free(struct udev_list_entry *entry) {
|
||||
if (!entry)
|
||||
return NULL;
|
||||
|
||||
@@ -52,9 +51,14 @@ static struct udev_list_entry *udev_list_entry_free(struct udev_list_entry *entr
|
||||
return mfree(entry);
|
||||
}
|
||||
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_list_entry *, udev_list_entry_free);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_list_entry*, udev_list_entry_free);
|
||||
|
||||
struct udev_list *udev_list_new(bool unique) {
|
||||
DEFINE_PRIVATE_HASH_OPS_WITH_VALUE_DESTRUCTOR(
|
||||
udev_list_entry_hash_ops,
|
||||
char, string_hash_func, string_compare_func,
|
||||
struct udev_list_entry, udev_list_entry_free);
|
||||
|
||||
struct udev_list* udev_list_new(bool unique) {
|
||||
struct udev_list *list;
|
||||
|
||||
list = new(struct udev_list, 1);
|
||||
@@ -68,36 +72,26 @@ struct udev_list *udev_list_new(bool unique) {
|
||||
return list;
|
||||
}
|
||||
|
||||
struct udev_list_entry *udev_list_entry_add(struct udev_list *list, const char *_name, const char *_value) {
|
||||
struct udev_list_entry* udev_list_entry_add(struct udev_list *list, const char *name, const char *value) {
|
||||
_cleanup_(udev_list_entry_freep) struct udev_list_entry *entry = NULL;
|
||||
_cleanup_free_ char *name = NULL, *value = NULL;
|
||||
|
||||
assert(list);
|
||||
assert(_name);
|
||||
assert(name);
|
||||
|
||||
name = strdup(_name);
|
||||
if (!name)
|
||||
return NULL;
|
||||
|
||||
if (_value) {
|
||||
value = strdup(_value);
|
||||
if (!value)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
entry = new(struct udev_list_entry, 1);
|
||||
entry = new0(struct udev_list_entry, 1);
|
||||
if (!entry)
|
||||
return NULL;
|
||||
|
||||
*entry = (struct udev_list_entry) {
|
||||
.name = TAKE_PTR(name),
|
||||
.value = TAKE_PTR(value),
|
||||
};
|
||||
if (strdup_to(&entry->name, name) < 0)
|
||||
return NULL;
|
||||
|
||||
if (strdup_to(&entry->value, value) < 0)
|
||||
return NULL;
|
||||
|
||||
if (list->unique) {
|
||||
udev_list_entry_free(hashmap_get(list->unique_entries, entry->name));
|
||||
|
||||
if (hashmap_ensure_put(&list->unique_entries, &string_hash_ops, entry->name, entry) < 0)
|
||||
if (hashmap_ensure_put(&list->unique_entries, &udev_list_entry_hash_ops, entry->name, entry) < 0)
|
||||
return NULL;
|
||||
|
||||
list->uptodate = false;
|
||||
@@ -115,13 +109,13 @@ void udev_list_cleanup(struct udev_list *list) {
|
||||
|
||||
if (list->unique) {
|
||||
list->uptodate = false;
|
||||
hashmap_clear_with_destructor(list->unique_entries, udev_list_entry_free);
|
||||
hashmap_clear(list->unique_entries);
|
||||
} else
|
||||
LIST_FOREACH(entries, i, list->entries)
|
||||
udev_list_entry_free(i);
|
||||
}
|
||||
|
||||
struct udev_list *udev_list_free(struct udev_list *list) {
|
||||
struct udev_list* udev_list_free(struct udev_list *list) {
|
||||
if (!list)
|
||||
return NULL;
|
||||
|
||||
@@ -131,11 +125,7 @@ struct udev_list *udev_list_free(struct udev_list *list) {
|
||||
return mfree(list);
|
||||
}
|
||||
|
||||
static int udev_list_entry_compare_func(struct udev_list_entry * const *a, struct udev_list_entry * const *b) {
|
||||
return strcmp((*a)->name, (*b)->name);
|
||||
}
|
||||
|
||||
struct udev_list_entry *udev_list_get_entry(struct udev_list *list) {
|
||||
struct udev_list_entry* udev_list_get_entry(struct udev_list *list) {
|
||||
if (!list)
|
||||
return NULL;
|
||||
|
||||
@@ -151,18 +141,10 @@ struct udev_list_entry *udev_list_get_entry(struct udev_list *list) {
|
||||
LIST_PREPEND(entries, list->entries, hashmap_first(list->unique_entries));
|
||||
else {
|
||||
_cleanup_free_ struct udev_list_entry **buf = NULL;
|
||||
struct udev_list_entry *entry, **p;
|
||||
|
||||
buf = new(struct udev_list_entry *, n);
|
||||
if (!buf)
|
||||
if (hashmap_dump_sorted(list->unique_entries, (void***) &buf, /* ret_n = */ NULL) < 0)
|
||||
return NULL;
|
||||
|
||||
p = buf;
|
||||
HASHMAP_FOREACH(entry, list->unique_entries)
|
||||
*p++ = entry;
|
||||
|
||||
typesafe_qsort(buf, n, udev_list_entry_compare_func);
|
||||
|
||||
for (size_t j = n; j > 0; j--)
|
||||
LIST_PREPEND(entries, list->entries, buf[j-1]);
|
||||
}
|
||||
@@ -181,7 +163,7 @@ struct udev_list_entry *udev_list_get_entry(struct udev_list *list) {
|
||||
*
|
||||
* Returns: udev_list_entry, #NULL if no more entries are available.
|
||||
*/
|
||||
_public_ struct udev_list_entry *udev_list_entry_get_next(struct udev_list_entry *list_entry) {
|
||||
_public_ struct udev_list_entry* udev_list_entry_get_next(struct udev_list_entry *list_entry) {
|
||||
if (!list_entry)
|
||||
return NULL;
|
||||
if (list_entry->list->unique && !list_entry->list->uptodate)
|
||||
@@ -198,7 +180,7 @@ _public_ struct udev_list_entry *udev_list_entry_get_next(struct udev_list_entry
|
||||
*
|
||||
* Returns: udev_list_entry, #NULL if no matching entry is found.
|
||||
*/
|
||||
_public_ struct udev_list_entry *udev_list_entry_get_by_name(struct udev_list_entry *list_entry, const char *name) {
|
||||
_public_ struct udev_list_entry* udev_list_entry_get_by_name(struct udev_list_entry *list_entry, const char *name) {
|
||||
if (!list_entry)
|
||||
return NULL;
|
||||
if (!list_entry->list->unique || !list_entry->list->uptodate)
|
||||
@@ -214,7 +196,7 @@ _public_ struct udev_list_entry *udev_list_entry_get_by_name(struct udev_list_en
|
||||
*
|
||||
* Returns: the name string of this entry.
|
||||
*/
|
||||
_public_ const char *udev_list_entry_get_name(struct udev_list_entry *list_entry) {
|
||||
_public_ const char* udev_list_entry_get_name(struct udev_list_entry *list_entry) {
|
||||
if (!list_entry)
|
||||
return NULL;
|
||||
return list_entry->name;
|
||||
@@ -228,7 +210,7 @@ _public_ const char *udev_list_entry_get_name(struct udev_list_entry *list_entry
|
||||
*
|
||||
* Returns: the value string of this entry.
|
||||
*/
|
||||
_public_ const char *udev_list_entry_get_value(struct udev_list_entry *list_entry) {
|
||||
_public_ const char* udev_list_entry_get_value(struct udev_list_entry *list_entry) {
|
||||
if (!list_entry)
|
||||
return NULL;
|
||||
return list_entry->value;
|
||||
|
||||
@@ -63,7 +63,7 @@ static MonitorNetlinkGroup monitor_netlink_group_from_string(const char *name) {
|
||||
*
|
||||
* Returns: a new udev monitor, or #NULL, in case of an error
|
||||
**/
|
||||
_public_ struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev, const char *name) {
|
||||
_public_ struct udev_monitor* udev_monitor_new_from_netlink(struct udev *udev, const char *name) {
|
||||
_cleanup_(sd_device_monitor_unrefp) sd_device_monitor *m = NULL;
|
||||
struct udev_monitor *udev_monitor;
|
||||
MonitorNetlinkGroup g;
|
||||
@@ -133,7 +133,7 @@ _public_ int udev_monitor_set_receive_buffer_size(struct udev_monitor *udev_moni
|
||||
return sd_device_monitor_set_receive_buffer_size(udev_monitor->monitor, (size_t) size);
|
||||
}
|
||||
|
||||
static struct udev_monitor *udev_monitor_free(struct udev_monitor *udev_monitor) {
|
||||
static struct udev_monitor* udev_monitor_free(struct udev_monitor *udev_monitor) {
|
||||
assert(udev_monitor);
|
||||
|
||||
sd_device_monitor_unref(udev_monitor->monitor);
|
||||
@@ -169,7 +169,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_UNREF_FUNC(struct udev_monitor, udev_monitor, udev_mon
|
||||
*
|
||||
* Returns: the udev library context
|
||||
**/
|
||||
_public_ struct udev *udev_monitor_get_udev(struct udev_monitor *udev_monitor) {
|
||||
_public_ struct udev* udev_monitor_get_udev(struct udev_monitor *udev_monitor) {
|
||||
assert_return(udev_monitor, NULL);
|
||||
|
||||
return udev_monitor->udev;
|
||||
@@ -236,7 +236,7 @@ static int udev_monitor_receive_sd_device(struct udev_monitor *udev_monitor, sd_
|
||||
*
|
||||
* Returns: a new udev device, or #NULL, in case of an error
|
||||
**/
|
||||
_public_ struct udev_device *udev_monitor_receive_device(struct udev_monitor *udev_monitor) {
|
||||
_public_ struct udev_device* udev_monitor_receive_device(struct udev_monitor *udev_monitor) {
|
||||
_cleanup_(sd_device_unrefp) sd_device *device = NULL;
|
||||
int r;
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ struct udev_queue {
|
||||
*
|
||||
* Returns: the udev queue context, or #NULL on error.
|
||||
**/
|
||||
_public_ struct udev_queue *udev_queue_new(struct udev *udev) {
|
||||
_public_ struct udev_queue* udev_queue_new(struct udev *udev) {
|
||||
struct udev_queue *udev_queue;
|
||||
|
||||
udev_queue = new(struct udev_queue, 1);
|
||||
@@ -56,7 +56,7 @@ _public_ struct udev_queue *udev_queue_new(struct udev *udev) {
|
||||
return udev_queue;
|
||||
}
|
||||
|
||||
static struct udev_queue *udev_queue_free(struct udev_queue *udev_queue) {
|
||||
static struct udev_queue* udev_queue_free(struct udev_queue *udev_queue) {
|
||||
assert(udev_queue);
|
||||
|
||||
safe_close(udev_queue->fd);
|
||||
@@ -91,7 +91,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_UNREF_FUNC(struct udev_queue, udev_queue, udev_queue_f
|
||||
*
|
||||
* Returns: the udev library context.
|
||||
**/
|
||||
_public_ struct udev *udev_queue_get_udev(struct udev_queue *udev_queue) {
|
||||
_public_ struct udev* udev_queue_get_udev(struct udev_queue *udev_queue) {
|
||||
assert_return_errno(udev_queue, NULL, EINVAL);
|
||||
|
||||
return udev_queue->udev;
|
||||
@@ -155,8 +155,11 @@ _public_ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue) {
|
||||
*
|
||||
* Returns: a flag indicating if udev is currently handling events.
|
||||
**/
|
||||
_public_ int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue,
|
||||
unsigned long long int start, unsigned long long int end) {
|
||||
_public_ int udev_queue_get_seqnum_sequence_is_finished(
|
||||
struct udev_queue *udev_queue,
|
||||
unsigned long long int start,
|
||||
unsigned long long int end) {
|
||||
|
||||
return udev_queue_is_empty() > 0;
|
||||
}
|
||||
|
||||
@@ -181,7 +184,7 @@ _public_ int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, un
|
||||
*
|
||||
* Returns: NULL.
|
||||
**/
|
||||
_public_ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) {
|
||||
_public_ struct udev_list_entry* udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) {
|
||||
return_with_errno(NULL, ENODATA);
|
||||
}
|
||||
|
||||
|
||||
+11
-7
@@ -36,7 +36,7 @@ struct udev {
|
||||
*
|
||||
* Returns: stored userdata
|
||||
**/
|
||||
_public_ void *udev_get_userdata(struct udev *udev) {
|
||||
_public_ void* udev_get_userdata(struct udev *udev) {
|
||||
assert_return(udev, NULL);
|
||||
|
||||
return udev->userdata;
|
||||
@@ -66,7 +66,7 @@ _public_ void udev_set_userdata(struct udev *udev, void *userdata) {
|
||||
*
|
||||
* Returns: a new udev library context
|
||||
**/
|
||||
_public_ struct udev *udev_new(void) {
|
||||
_public_ struct udev* udev_new(void) {
|
||||
struct udev *udev;
|
||||
|
||||
udev = new(struct udev, 1);
|
||||
@@ -99,7 +99,7 @@ DEFINE_PUBLIC_TRIVIAL_REF_FUNC(struct udev, udev);
|
||||
*
|
||||
* Returns: the passed udev library context if it has still an active reference, or #NULL otherwise.
|
||||
**/
|
||||
_public_ struct udev *udev_unref(struct udev *udev) {
|
||||
_public_ struct udev* udev_unref(struct udev *udev) {
|
||||
if (!udev)
|
||||
return NULL;
|
||||
|
||||
@@ -123,10 +123,14 @@ _public_ struct udev *udev_unref(struct udev *udev) {
|
||||
*
|
||||
**/
|
||||
_public_ void udev_set_log_fn(
|
||||
struct udev *udev,
|
||||
void (*log_fn)(struct udev *udev,
|
||||
int priority, const char *file, int line, const char *fn,
|
||||
const char *format, va_list args)) {
|
||||
struct udev *udev,
|
||||
void (*log_fn)(struct udev *udev,
|
||||
int priority,
|
||||
const char *file,
|
||||
int line,
|
||||
const char *fn,
|
||||
const char *format,
|
||||
va_list args)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
+60
-49
@@ -18,16 +18,21 @@ extern "C" {
|
||||
* allows custom logging
|
||||
*/
|
||||
struct udev;
|
||||
struct udev *udev_ref(struct udev *udev);
|
||||
struct udev *udev_unref(struct udev *udev);
|
||||
struct udev *udev_new(void);
|
||||
void udev_set_log_fn(struct udev *udev,
|
||||
void (*log_fn)(struct udev *udev,
|
||||
int priority, const char *file, int line, const char *fn,
|
||||
const char *format, va_list args)) __attribute__((__deprecated__));
|
||||
struct udev* udev_ref(struct udev *udev);
|
||||
struct udev* udev_unref(struct udev *udev);
|
||||
struct udev* udev_new(void);
|
||||
void udev_set_log_fn(
|
||||
struct udev *udev,
|
||||
void (*log_fn)(struct udev *udev,
|
||||
int priority,
|
||||
const char *file,
|
||||
int line,
|
||||
const char *fn,
|
||||
const char *format,
|
||||
va_list args)) __attribute__((__deprecated__));
|
||||
int udev_get_log_priority(struct udev *udev) __attribute__((__deprecated__));
|
||||
void udev_set_log_priority(struct udev *udev, int priority) __attribute__((__deprecated__));
|
||||
void *udev_get_userdata(struct udev *udev);
|
||||
void* udev_get_userdata(struct udev *udev);
|
||||
void udev_set_userdata(struct udev *udev, void *userdata);
|
||||
|
||||
/*
|
||||
@@ -36,8 +41,8 @@ void udev_set_userdata(struct udev *udev, void *userdata);
|
||||
* access to libudev generated lists
|
||||
*/
|
||||
struct udev_list_entry;
|
||||
struct udev_list_entry *udev_list_entry_get_next(struct udev_list_entry *list_entry);
|
||||
struct udev_list_entry *udev_list_entry_get_by_name(struct udev_list_entry *list_entry, const char *name);
|
||||
struct udev_list_entry* udev_list_entry_get_next(struct udev_list_entry *list_entry);
|
||||
struct udev_list_entry* udev_list_entry_get_by_name(struct udev_list_entry *list_entry, const char *name);
|
||||
const char* udev_list_entry_get_name(struct udev_list_entry *list_entry);
|
||||
const char* udev_list_entry_get_value(struct udev_list_entry *list_entry);
|
||||
/**
|
||||
@@ -58,18 +63,20 @@ const char* udev_list_entry_get_value(struct udev_list_entry *list_entry);
|
||||
* access to sysfs/kernel devices
|
||||
*/
|
||||
struct udev_device;
|
||||
struct udev_device *udev_device_ref(struct udev_device *udev_device);
|
||||
struct udev_device *udev_device_unref(struct udev_device *udev_device);
|
||||
struct udev *udev_device_get_udev(struct udev_device *udev_device);
|
||||
struct udev_device *udev_device_new_from_syspath(struct udev *udev, const char *syspath);
|
||||
struct udev_device *udev_device_new_from_devnum(struct udev *udev, char type, dev_t devnum);
|
||||
struct udev_device *udev_device_new_from_subsystem_sysname(struct udev *udev, const char *subsystem, const char *sysname);
|
||||
struct udev_device *udev_device_new_from_device_id(struct udev *udev, const char *id);
|
||||
struct udev_device *udev_device_new_from_environment(struct udev *udev);
|
||||
struct udev_device* udev_device_ref(struct udev_device *udev_device);
|
||||
struct udev_device* udev_device_unref(struct udev_device *udev_device);
|
||||
struct udev* udev_device_get_udev(struct udev_device *udev_device);
|
||||
struct udev_device* udev_device_new_from_syspath(struct udev *udev, const char *syspath);
|
||||
struct udev_device* udev_device_new_from_devnum(struct udev *udev, char type, dev_t devnum);
|
||||
struct udev_device* udev_device_new_from_subsystem_sysname(struct udev *udev, const char *subsystem, const char *sysname);
|
||||
struct udev_device* udev_device_new_from_device_id(struct udev *udev, const char *id);
|
||||
struct udev_device* udev_device_new_from_environment(struct udev *udev);
|
||||
/* udev_device_get_parent_*() does not take a reference on the returned device, it is automatically unref'd with the parent */
|
||||
struct udev_device *udev_device_get_parent(struct udev_device *udev_device);
|
||||
struct udev_device *udev_device_get_parent_with_subsystem_devtype(struct udev_device *udev_device,
|
||||
const char *subsystem, const char *devtype);
|
||||
struct udev_device* udev_device_get_parent(struct udev_device *udev_device);
|
||||
struct udev_device* udev_device_get_parent_with_subsystem_devtype(
|
||||
struct udev_device *udev_device,
|
||||
const char *subsystem,
|
||||
const char *devtype);
|
||||
/* retrieve device properties */
|
||||
const char* udev_device_get_devpath(struct udev_device *udev_device);
|
||||
const char* udev_device_get_subsystem(struct udev_device *udev_device);
|
||||
@@ -79,11 +86,11 @@ const char* udev_device_get_sysname(struct udev_device *udev_device);
|
||||
const char* udev_device_get_sysnum(struct udev_device *udev_device);
|
||||
const char* udev_device_get_devnode(struct udev_device *udev_device);
|
||||
int udev_device_get_is_initialized(struct udev_device *udev_device);
|
||||
struct udev_list_entry *udev_device_get_devlinks_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry *udev_device_get_properties_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry *udev_device_get_tags_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry *udev_device_get_current_tags_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry *udev_device_get_sysattr_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry* udev_device_get_devlinks_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry* udev_device_get_properties_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry* udev_device_get_tags_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry* udev_device_get_current_tags_list_entry(struct udev_device *udev_device);
|
||||
struct udev_list_entry* udev_device_get_sysattr_list_entry(struct udev_device *udev_device);
|
||||
const char* udev_device_get_property_value(struct udev_device *udev_device, const char *key);
|
||||
const char* udev_device_get_driver(struct udev_device *udev_device);
|
||||
dev_t udev_device_get_devnum(struct udev_device *udev_device);
|
||||
@@ -101,19 +108,21 @@ int udev_device_has_current_tag(struct udev_device *udev_device, const char *tag
|
||||
* access to kernel uevents and udev events
|
||||
*/
|
||||
struct udev_monitor;
|
||||
struct udev_monitor *udev_monitor_ref(struct udev_monitor *udev_monitor);
|
||||
struct udev_monitor *udev_monitor_unref(struct udev_monitor *udev_monitor);
|
||||
struct udev *udev_monitor_get_udev(struct udev_monitor *udev_monitor);
|
||||
struct udev_monitor* udev_monitor_ref(struct udev_monitor *udev_monitor);
|
||||
struct udev_monitor* udev_monitor_unref(struct udev_monitor *udev_monitor);
|
||||
struct udev* udev_monitor_get_udev(struct udev_monitor *udev_monitor);
|
||||
/* kernel and udev generated events over netlink */
|
||||
struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev, const char *name);
|
||||
struct udev_monitor* udev_monitor_new_from_netlink(struct udev *udev, const char *name);
|
||||
/* bind socket */
|
||||
int udev_monitor_enable_receiving(struct udev_monitor *udev_monitor);
|
||||
int udev_monitor_set_receive_buffer_size(struct udev_monitor *udev_monitor, int size);
|
||||
int udev_monitor_get_fd(struct udev_monitor *udev_monitor);
|
||||
struct udev_device *udev_monitor_receive_device(struct udev_monitor *udev_monitor);
|
||||
struct udev_device* udev_monitor_receive_device(struct udev_monitor *udev_monitor);
|
||||
/* in-kernel socket filters to select messages that get delivered to a listener */
|
||||
int udev_monitor_filter_add_match_subsystem_devtype(struct udev_monitor *udev_monitor,
|
||||
const char *subsystem, const char *devtype);
|
||||
int udev_monitor_filter_add_match_subsystem_devtype(
|
||||
struct udev_monitor *udev_monitor,
|
||||
const char *subsystem,
|
||||
const char *devtype);
|
||||
int udev_monitor_filter_add_match_tag(struct udev_monitor *udev_monitor, const char *tag);
|
||||
int udev_monitor_filter_update(struct udev_monitor *udev_monitor);
|
||||
int udev_monitor_filter_remove(struct udev_monitor *udev_monitor);
|
||||
@@ -124,10 +133,10 @@ int udev_monitor_filter_remove(struct udev_monitor *udev_monitor);
|
||||
* search sysfs for specific devices and provide a sorted list
|
||||
*/
|
||||
struct udev_enumerate;
|
||||
struct udev_enumerate *udev_enumerate_ref(struct udev_enumerate *udev_enumerate);
|
||||
struct udev_enumerate *udev_enumerate_unref(struct udev_enumerate *udev_enumerate);
|
||||
struct udev *udev_enumerate_get_udev(struct udev_enumerate *udev_enumerate);
|
||||
struct udev_enumerate *udev_enumerate_new(struct udev *udev);
|
||||
struct udev_enumerate* udev_enumerate_ref(struct udev_enumerate *udev_enumerate);
|
||||
struct udev_enumerate* udev_enumerate_unref(struct udev_enumerate *udev_enumerate);
|
||||
struct udev* udev_enumerate_get_udev(struct udev_enumerate *udev_enumerate);
|
||||
struct udev_enumerate* udev_enumerate_new(struct udev *udev);
|
||||
/* device properties filter */
|
||||
int udev_enumerate_add_match_subsystem(struct udev_enumerate *udev_enumerate, const char *subsystem);
|
||||
int udev_enumerate_add_nomatch_subsystem(struct udev_enumerate *udev_enumerate, const char *subsystem);
|
||||
@@ -143,7 +152,7 @@ int udev_enumerate_add_syspath(struct udev_enumerate *udev_enumerate, const char
|
||||
int udev_enumerate_scan_devices(struct udev_enumerate *udev_enumerate);
|
||||
int udev_enumerate_scan_subsystems(struct udev_enumerate *udev_enumerate);
|
||||
/* return device list */
|
||||
struct udev_list_entry *udev_enumerate_get_list_entry(struct udev_enumerate *udev_enumerate);
|
||||
struct udev_list_entry* udev_enumerate_get_list_entry(struct udev_enumerate *udev_enumerate);
|
||||
|
||||
/*
|
||||
* udev_queue
|
||||
@@ -151,20 +160,22 @@ struct udev_list_entry *udev_enumerate_get_list_entry(struct udev_enumerate *ude
|
||||
* access to the currently running udev events
|
||||
*/
|
||||
struct udev_queue;
|
||||
struct udev_queue *udev_queue_ref(struct udev_queue *udev_queue);
|
||||
struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue);
|
||||
struct udev *udev_queue_get_udev(struct udev_queue *udev_queue);
|
||||
struct udev_queue *udev_queue_new(struct udev *udev);
|
||||
struct udev_queue* udev_queue_ref(struct udev_queue *udev_queue);
|
||||
struct udev_queue* udev_queue_unref(struct udev_queue *udev_queue);
|
||||
struct udev* udev_queue_get_udev(struct udev_queue *udev_queue);
|
||||
struct udev_queue* udev_queue_new(struct udev *udev);
|
||||
unsigned long long int udev_queue_get_kernel_seqnum(struct udev_queue *udev_queue) __attribute__((__deprecated__));
|
||||
unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue *udev_queue) __attribute__((__deprecated__));
|
||||
int udev_queue_get_udev_is_active(struct udev_queue *udev_queue);
|
||||
int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue);
|
||||
int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum) __attribute__((__deprecated__));
|
||||
int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue,
|
||||
unsigned long long int start, unsigned long long int end) __attribute__((__deprecated__));
|
||||
int udev_queue_get_seqnum_sequence_is_finished(
|
||||
struct udev_queue *udev_queue,
|
||||
unsigned long long int start,
|
||||
unsigned long long int end) __attribute__((__deprecated__));
|
||||
int udev_queue_get_fd(struct udev_queue *udev_queue);
|
||||
int udev_queue_flush(struct udev_queue *udev_queue);
|
||||
struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) __attribute__((__deprecated__));
|
||||
struct udev_list_entry* udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) __attribute__((__deprecated__));
|
||||
|
||||
/*
|
||||
* udev_hwdb
|
||||
@@ -172,10 +183,10 @@ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev
|
||||
* access to the static hardware properties database
|
||||
*/
|
||||
struct udev_hwdb;
|
||||
struct udev_hwdb *udev_hwdb_new(struct udev *udev);
|
||||
struct udev_hwdb *udev_hwdb_ref(struct udev_hwdb *hwdb);
|
||||
struct udev_hwdb *udev_hwdb_unref(struct udev_hwdb *hwdb);
|
||||
struct udev_list_entry *udev_hwdb_get_properties_list_entry(struct udev_hwdb *hwdb, const char *modalias, unsigned flags);
|
||||
struct udev_hwdb* udev_hwdb_new(struct udev *udev);
|
||||
struct udev_hwdb* udev_hwdb_ref(struct udev_hwdb *hwdb);
|
||||
struct udev_hwdb* udev_hwdb_unref(struct udev_hwdb *hwdb);
|
||||
struct udev_list_entry* udev_hwdb_get_properties_list_entry(struct udev_hwdb *hwdb, const char *modalias, unsigned flags);
|
||||
|
||||
/*
|
||||
* udev_util
|
||||
|
||||
Reference in New Issue
Block a user