diff options
author | Karol Lewandowski <k.lewandowsk@samsung.com> | 2024-01-23 12:58:00 +0100 |
---|---|---|
committer | Karol Lewandowski <k.lewandowsk@samsung.com> | 2024-01-23 12:58:00 +0100 |
commit | cbab226a74fbaaa43220dee80e8435555c6506ce (patch) | |
tree | 1bbd14ec625ea85d0bcc32232d51c1f71e2604d2 /lib/device/dev_util.c | |
parent | 44a3c2255bc480c82f34db156553a595606d8a0b (diff) | |
download | device-mapper-sandbox/klewandowski/upstream_2.03.22.tar.gz device-mapper-sandbox/klewandowski/upstream_2.03.22.tar.bz2 device-mapper-sandbox/klewandowski/upstream_2.03.22.zip |
Imported Upstream version 2.03.22upstream/libdevmapper-1.02.196upstream/2.03.22upstreamsandbox/klewandowski/upstream_2.03.22
Diffstat (limited to 'lib/device/dev_util.c')
-rw-r--r-- | lib/device/dev_util.c | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/lib/device/dev_util.c b/lib/device/dev_util.c new file mode 100644 index 0000000..2302df4 --- /dev/null +++ b/lib/device/dev_util.c @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2013 Red Hat, Inc. All rights reserved. + * + * This file is part of LVM2. + * + * This copyrighted material is made available to anyone wishing to use, + * modify, copy, or redistribute it subject to the terms and conditions + * of the GNU Lesser General Public License v.2.1. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "base/memory/zalloc.h" +#include "lib/misc/lib.h" +#include "lib/device/device.h" + +int device_id_list_remove(struct dm_list *list, struct device *dev) +{ + struct device_id_list *dil; + + dm_list_iterate_items(dil, list) { + if (dil->dev == dev) { + dm_list_del(&dil->list); + return 1; + } + } + return 0; +} + +struct device_id_list *device_id_list_find_dev(struct dm_list *list, struct device *dev) +{ + struct device_id_list *dil; + + dm_list_iterate_items(dil, list) { + if (dil->dev == dev) + return dil; + } + return NULL; +} + +int device_list_remove(struct dm_list *list, struct device *dev) +{ + struct device_list *devl; + + dm_list_iterate_items(devl, list) { + if (devl->dev == dev) { + dm_list_del(&devl->list); + return 1; + } + } + return 0; +} + +struct device_list *device_list_find_dev(struct dm_list *list, struct device *dev) +{ + struct device_list *devl; + + dm_list_iterate_items(devl, list) { + if (devl->dev == dev) + return devl; + } + return NULL; +} + |