xref: /aosp_15_r20/external/toybox/toys/other/fsfreeze.c (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1 /* fsfreeze.c - freeze or thaw filesystem
2  *
3  * No standard.
4 
5 USE_FSFREEZE(NEWTOY(fsfreeze, "<1>1f|u|[!fu]", TOYFLAG_USR|TOYFLAG_SBIN))
6 
7 config FSFREEZE
8   bool "fsfreeze"
9   default y
10   help
11     usage: fsfreeze {-f | -u} MOUNTPOINT
12 
13     Freeze or unfreeze a filesystem.
14 
15     -f	Freeze
16     -u	Unfreeze
17 */
18 
19 #define FOR_fsfreeze
20 #include "toys.h"
21 #include <linux/fs.h>
22 
fsfreeze_main(void)23 void fsfreeze_main(void)
24 {
25   int fd = xopenro(*toys.optargs);
26   long p = 1;
27 
28   xioctl(fd, FLAG(f) ? FIFREEZE : FITHAW, &p);
29   xclose(fd);
30 }
31