X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ftest%2Ftest-btrfs.c;h=c49b83217963f9f66e021d9174ad05277bf1e45d;hb=113b3fc1a8061f4a24dd0db74e9a3cd0083b2251;hp=7c4cc554424910911311c9b02949de4a212e708f;hpb=d7c7c334f56edab8cfc102b657366277a65738cf;p=elogind.git
diff --git a/src/test/test-btrfs.c b/src/test/test-btrfs.c
index 7c4cc5544..c49b83217 100644
--- a/src/test/test-btrfs.c
+++ b/src/test/test-btrfs.c
@@ -19,14 +19,51 @@
along with systemd; If not, see .
***/
-#include
+#include
#include "log.h"
-#include "btrfs-util.h"
#include "fileio.h"
+#include "util.h"
+#include "btrfs-util.h"
int main(int argc, char *argv[]) {
int r;
+ int fd;
+
+ fd = open("/", O_RDONLY|O_CLOEXEC|O_DIRECTORY);
+ if (fd < 0)
+ log_error_errno(errno, "Failed to open root directory: %m");
+ else {
+ BtrfsSubvolInfo info;
+ BtrfsQuotaInfo quota;
+ char ts[FORMAT_TIMESTAMP_MAX], bs[FORMAT_BYTES_MAX];
+
+ r = btrfs_subvol_get_info_fd(fd, &info);
+ if (r < 0)
+ log_error_errno(r, "Failed to get subvolume info: %m");
+ else {
+ log_info("otime: %s", format_timestamp(ts, sizeof(ts), info.otime));
+ log_info("read-only (search): %s", yes_no(info.read_only));
+ }
+
+ r = btrfs_subvol_get_quota_fd(fd, "a);
+ if (r < 0)
+ log_error_errno(r, "Failed to get quota info: %m");
+ else {
+ log_info("referred: %s", strna(format_bytes(bs, sizeof(bs), quota.referred)));
+ log_info("exclusive: %s", strna(format_bytes(bs, sizeof(bs), quota.exclusive)));
+ log_info("referred_max: %s", strna(format_bytes(bs, sizeof(bs), quota.referred_max)));
+ log_info("exclusive_max: %s", strna(format_bytes(bs, sizeof(bs), quota.exclusive_max)));
+ }
+
+ r = btrfs_subvol_get_read_only_fd(fd);
+ if (r < 0)
+ log_error_errno(r, "Failed to get read only flag: %m");
+ else
+ log_info("read-only (ioctl): %s", yes_no(r));
+
+ safe_close(fd);
+ }
r = btrfs_subvol_make("/xxxtest");
if (r < 0)