Mercurial > core / lisp/ffi/btrfs/util.lisp
changeset 504: |
f57e2bbee438 |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Wed, 03 Jul 2024 14:43:21 -0400 |
permissions: |
-rw-r--r-- |
description: |
split out btrfsutil |
1 ;;; util.lisp --- BtrfsUtil Alien Bindings 9 (define-opaque btrfs-util-qgroup-inherit nil t) 10 (define-opaque btrfs-util-subvolume-iterator nil t)) 12 (define-alien-enum (btrfs-util-error int) 19 :subvolume-not-found 6 22 :error-unlink-failed 9 24 :error-statfs-failed 11 25 :error-search-failed 12 26 :error-ino-lookup-failed 13 27 :error-subvol-getflags-failed 14 28 :error-subvol-setflags-failed 15 29 :error-subvol-create-failed 16 30 :error-snap-create-failed 17 31 :error-snap-destroy-failed 18 32 :error-default-subvol-failed 19 34 :error-start-sync-failed 21 35 :error-wait-sync-failed 22 36 :error-get-subvol-info-failed 23 37 :error-get-subvol-rootref-failed 24 38 :error-ino-lookup-user-failed 25 39 :error-fs-info-failed 26) 41 (define-alien-routine btrfs-util-strerror c-string (err btrfs-util-error)) 43 (define-alien-routine btrfs-util-subvolume-iter-destroy void 44 (iter (* btrfs-util-subvolume-iterator))) 46 (define-alien-routine btrfs-util-subvolume-iterator-get-fd int 47 (iter (* btrfs-util-subvolume-iterator))) 49 (define-alien-routine btrfs-util-qgroup-inherit-destroy void 50 (inherit (* btrfs-util-qgroup-inherit))) 52 (macrolet ((def (name &rest args) 54 (define-alien-routine ,name btrfs-util-error ,@args) 56 (def btrfs-util-fs-sync (path c-string)) 57 (def btrfs-util-fs-sync-fd (fd int)) 58 (def btrfs-util-fs-start-sync 60 (transid (* (unsigned 64)))) 61 (def btrfs-util-fs-start-sync-fd 63 (transid (* (unsigned 64)))) 64 (def btrfs-util-fs-wait-sync (path c-string) (transid (unsigned 64))) 65 (def btrfs-util-fs-wait-sync-fd (fd int) (transid (unsigned 64))) 66 (def btrfs-util-subvolume-is-valid (path c-string)) 67 (def btrfs-util-subvolume-is-valid-fd (fd int)) 68 (def btrfs-util-subvolume-get-id (path c-string) (id-ret (* (unsigned 64)))) 69 (def btrfs-util-subvolume-get-id-fd (fd int) (id-ret (* (unsigned 64)))) 70 (def btrfs-util-subvolume-get-path 73 (path-ret (* c-string))) 74 (def btrfs-util-subvolume-get-path-fd 77 (path-ret (* c-string))) 78 (def btrfs-util-subvolume-get-info 81 (subvol (* btrfs-util-subvolume-info))) 82 (def btrfs-util-subvolume-get-info-fd 85 (subvol (* btrfs-util-subvolume-info))) 86 (def btrfs-util-subvolume-get-read-only 89 (def btrfs-util-subvolume-get-read-only-fd 92 (def btrfs-util-subvolume-set-read-only 95 (def btrfs-util-subvolume-set-read-only-fd 98 (def btrfs-util-subvolume-get-default 100 (id-ret (* (unsigned 64)))) 101 (def btrfs-util-subvolume-get-default-fd 103 (id-ret (* (unsigned 64)))) 104 (def btrfs-util-subvolume-set-default 107 (def btrfs-util-subvolume-set-default-fd 110 (def btrfs-util-subvolume-create 113 (unused (* (unsigned 64))) 114 (qgroup-inherit (* btrfs-util-qgroup-inherit))) 115 (def btrfs-util-subvolume-create-fd 119 (unused (* (unsigned 64))) 120 (qgroup-inherit (* btrfs-util-qgroup-inherit))) 121 (def btrfs-util-subvolume-snapshot 125 (unused (* (unsigned 64))) 126 (qgroup-inherit (* btrfs-util-qgroup-inherit))) 127 (def btrfs-util-subvolume-snapshot-fd 131 (unused (* (unsigned 64))) 132 (qgroup-inherit (* btrfs-util-qgroup-inherit))) 133 (def btrfs-util-subvolume-snapshot-fd2 138 (unused (* (unsigned 64))) 139 (qgroup-inherit (* btrfs-util-qgroup-inherit))) 140 (def btrfs-util-subvolume-delete 143 (def btrfs-util-subvolume-delete-fd 147 (def btrfs-util-subvolume-delete-by-id-fd 149 (subvolid (unsigned 64))) 150 (def btrfs-util-subvolume-iter-create 154 (ret (* (* btrfs-util-subvolume-iterator)))) 155 (def btrfs-util-subvolume-iter-create-fd 159 (ret (* (* btrfs-util-subvolume-iterator)))) 160 (def btrfs-util-subvolume-iter-next 161 (iter (* btrfs-util-subvolume-iterator)) 162 (path-ret (* c-string)) 163 (id-ret (* (unsigned 64)))) 164 (def btrfs-util-subvolume-iter-next-info 165 (iter (* btrfs-util-subvolume-iterator)) 166 (path-ret (* c-string)) 167 (subvol (* btrfs-util-subvolume-info))) 168 (def btrfs-util-subvolume-list-deleted 170 (ids (* (* (unsigned 64)))) 172 (def btrfs-util-subvolume-list-deleted-fd 174 (ids (* (* (unsigned 64)))) 176 (def btrfs-util-qgroup-inherit-create 178 (ret (* (* btrfs-util-qgroup-inherit)))) 179 (def btrfs-util-qgroup-inherit-add-group 180 (inherit (* (* btrfs-util-qgroup-inherit))) 181 (qgroupid (unsigned 64))) 182 (def btrfs-util-qgroup-inherit-get-groups 183 (inherit (* btrfs-util-qgroup-inherit)) 184 (groups (* (* (unsigned 64))))