fs.h - sbase - suckless unix tools
(HTM) git clone git://git.suckless.org/sbase
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
fs.h (909B)
---
1 /* See LICENSE file for copyright and license details. */
2 #include <limits.h>
3 #include <sys/stat.h>
4 #include <sys/types.h>
5
6 struct history {
7 struct history *prev;
8 dev_t dev;
9 ino_t ino;
10 };
11
12 struct recursor {
13 void (*fn)(int, const char *, struct stat *, void *, struct recursor *);
14 char path[PATH_MAX];
15 size_t pathlen;
16 struct history *hist;
17 int depth;
18 int maxdepth;
19 int follow;
20 int flags;
21 };
22
23 enum {
24 SAMEDEV = 1 << 0,
25 DIRFIRST = 1 << 1,
26 SILENT = 1 << 2,
27 CONFIRM = 1 << 3,
28 IGNORE = 1 << 4,
29 };
30
31 extern int cp_aflag;
32 extern int cp_fflag;
33 extern int cp_iflag;
34 extern int cp_pflag;
35 extern int cp_rflag;
36 extern int cp_vflag;
37 extern int cp_follow;
38 extern int cp_status;
39
40 extern int rm_status;
41
42 extern int recurse_status;
43
44 void recurse(int, const char *, void *, struct recursor *);
45
46 int cp(const char *, const char *, int);
47 void rm(int, const char *, struct stat *st, void *, struct recursor *);