| /* SPDX-License-Identifier: LGPL-2.1-or-later */ |
| #pragma once |
| |
| /*** |
| Copyright © 2010 ProFUSION embedded systems |
| ***/ |
| |
| #include "list.h" |
| |
| int umount_all(bool *changed, int umount_log_level); |
| |
| int swapoff_all(bool *changed); |
| |
| int loopback_detach_all(bool *changed, int umount_log_level); |
| |
| int dm_detach_all(bool *changed, int umount_log_level); |
| |
| int md_detach_all(bool *changed, int umount_log_level); |
| |
| /* This is exported just for testing */ |
| typedef struct MountPoint { |
| char *path; |
| char *remount_options; |
| unsigned long remount_flags; |
| bool try_remount_ro; |
| dev_t devnum; |
| LIST_FIELDS(struct MountPoint, mount_point); |
| } MountPoint; |
| |
| int mount_points_list_get(const char *mountinfo, MountPoint **head); |
| void mount_points_list_free(MountPoint **head); |
| int swap_list_get(const char *swaps, MountPoint **head); |