| fs.h - sbase - suckless unix tools | |
| git clone git://git.suckless.org/sbase | |
| Log | |
| Files | |
| Refs | |
| README | |
| 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 recu… | |
| 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 *); |