diff options
author | Mattias Andrée <maandree@kth.se> | 2024-08-30 17:21:01 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2024-08-30 17:21:22 +0200 |
commit | 8a572a7cf41d220f6afbf4ea9a65710edf885e98 (patch) | |
tree | 18fd584bd315f8d78ee9ce4606e92e7d302a2645 | |
parent | Second commit (diff) | |
download | anysum-8a572a7cf41d220f6afbf4ea9a65710edf885e98.tar.gz anysum-8a572a7cf41d220f6afbf4ea9a65710edf885e98.tar.bz2 anysum-8a572a7cf41d220f6afbf4ea9a65710edf885e98.tar.xz |
m + add -W[no-]xlink and -W[no-]xdev
Signed-off-by: Mattias Andrée <maandree@kth.se>
-rw-r--r-- | README | 23 | ||||
-rw-r--r-- | anysum.1 | 22 | ||||
-rw-r--r-- | anysum.c | 3 | ||||
-rw-r--r-- | b224sum.1 | 22 | ||||
-rw-r--r-- | b256sum.1 | 22 | ||||
-rw-r--r-- | b384sum.1 | 22 | ||||
-rw-r--r-- | b512sum.1 | 22 | ||||
-rw-r--r-- | bsum.1 | 22 | ||||
-rw-r--r-- | command.c | 2 | ||||
-rw-r--r-- | common.h | 5 | ||||
-rw-r--r-- | get.c | 28 | ||||
-rw-r--r-- | keccak224sum.1 | 22 | ||||
-rw-r--r-- | keccak256sum.1 | 22 | ||||
-rw-r--r-- | keccak384sum.1 | 22 | ||||
-rw-r--r-- | keccak512sum.1 | 22 | ||||
-rw-r--r-- | keccaksum.1 | 22 | ||||
-rw-r--r-- | md2sum.1 | 22 | ||||
-rw-r--r-- | md4sum.1 | 22 | ||||
-rw-r--r-- | md5sum.1 | 22 | ||||
-rw-r--r-- | opts.c | 28 | ||||
-rw-r--r-- | rawshake128sum.1 | 22 | ||||
-rw-r--r-- | rawshake256sum.1 | 22 | ||||
-rw-r--r-- | rawshake512sum.1 | 22 | ||||
-rw-r--r-- | read.c | 2 | ||||
-rw-r--r-- | rmd128sum.1 | 22 | ||||
-rw-r--r-- | rmd160sum.1 | 22 | ||||
-rw-r--r-- | rmd256sum.1 | 22 | ||||
-rw-r--r-- | rmd320sum.1 | 22 | ||||
-rw-r--r-- | sha0sum.1 | 22 | ||||
-rw-r--r-- | sha1sum.1 | 22 | ||||
-rw-r--r-- | sha224sum.1 | 22 | ||||
-rw-r--r-- | sha256sum.1 | 22 | ||||
-rw-r--r-- | sha3-224sum.1 | 22 | ||||
-rw-r--r-- | sha3-256sum.1 | 22 | ||||
-rw-r--r-- | sha3-384sum.1 | 22 | ||||
-rw-r--r-- | sha3-512sum.1 | 22 | ||||
-rw-r--r-- | sha384sum.1 | 22 | ||||
-rw-r--r-- | sha3sum.1 | 22 | ||||
-rw-r--r-- | sha512-224sum.1 | 22 | ||||
-rw-r--r-- | sha512-256sum.1 | 22 | ||||
-rw-r--r-- | sha512sum.1 | 22 | ||||
-rw-r--r-- | shake128sum.1 | 22 | ||||
-rw-r--r-- | shake256sum.1 | 22 | ||||
-rw-r--r-- | shake512sum.1 | 22 |
44 files changed, 890 insertions, 15 deletions
@@ -219,14 +219,31 @@ OPTIONS recursive If a file operand is a directory, the checksum - is computed for all files recursively. - This option is ignored if the -c option is - used. + is computed for all files recursively. This + option is ignored if the -c option is used. no-recursive The utility shall traverse directories. (This is the default behaviour). + xdev + Implies -Wrecursive but also allows the + recursion across mountpoints. + + no-xdev + Disable recursion across mountpoints. (This is + the default behaviour). Note that this does + not disable recursion by itself. + + xlink + Implies -Wrecursive but also allows the + recursion across symbolic links. + + no-xlink + Disable recursion across symbolic links. (This + is the default behaviour). Note that this does + not disable recursion by itself. + -w Warn about, but skip, lines that are not properly formatted. @@ -289,6 +289,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -107,7 +107,8 @@ main(int argc, char **argv) } } ret = calculate_and_print_each(argv, config.algorithms, config.nalgorithms, config.threads, - config.format, config.hexinput, config.recursive); + config.format, config.hexinput, config.recursive, config.xdev, + config.xlink); } for (i = 0; i < config.nalgorithms; i++) @@ -117,6 +117,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -117,6 +117,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -117,6 +117,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -117,6 +117,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -133,6 +133,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -42,7 +42,7 @@ getcommand(const char **name_out, enum libhashsum_algorithm *algorithm_out) return BSUM; specialised: - if (!libhashsum_get_algorithm_string(algorithm_out, name)) + if (!libhashsum_get_algorithm_from_string(algorithm_out, name)) eprintf("invalid command name, is not \"anysum\" and " "does not match any known hash function"); if (strchr(name, '[')) @@ -58,6 +58,8 @@ struct config { int warn_improper_format; int hexinput; int recursive; + int xdev; + int xlink; struct algorithm *algorithms; size_t nalgorithms; size_t threads; @@ -113,7 +115,8 @@ struct thread_data { /* get.c */ int calculate_and_print_each(char **files, struct algorithm *algorithms, size_t nalgorithms, - size_t nthreads, enum format format, int hexinput, int recursive); + size_t nthreads, enum format format, int hexinput, int recursive, + int xdev, int xlink); /* check.c */ int verify_checksums(char **files, struct algorithm *algorithms, size_t nalgorithms, size_t nthreads, @@ -10,8 +10,10 @@ struct recursion_buffer { static int -calculate_and_print(const char *file, struct barrier_group *group, struct global_data *global, struct recursion_buffer *recbuf) +calculate_and_print(const char *file, struct barrier_group *group, struct global_data *global, + struct recursion_buffer *recbuf, int is_top, int xlink, int xdev, dev_t dev) { + static struct stat st; struct dirent *f; DIR *dir; size_t i, len, old_len; @@ -21,6 +23,20 @@ calculate_and_print(const char *file, struct barrier_group *group, struct global dir = opendir(file); if (!dir) goto as_file; + if (!is_top && !xlink) { + if (lstat(file, &st)) + goto recusion_error_print; + if (S_ISLNK(st.st_mode)) + return 0; + } + if (!xdev) { + if (fstat(dirfd(dir), &st)) + goto recusion_error_print; + if (is_top) + dev = st.st_dev; + else if (st.st_dev != dev) + return 0; + } if (recbuf->size - recbuf->len < strlen(file) + 1U) { recbuf->size = recbuf->len + strlen(file) + 1U; recbuf->buf = erealloc(recbuf->buf, recbuf->size); @@ -32,17 +48,20 @@ calculate_and_print(const char *file, struct barrier_group *group, struct global recbuf->buf[recbuf->len++] = '/'; len = recbuf->len; while ((errno = 0, f = readdir(dir))) { + if (f->d_name[0] == '.' && !f->d_name[f->d_name[1] == '.' ? 2 : 1]) + continue; if (recbuf->size - len < strlen(f->d_name) + 1U) { recbuf->size = len + strlen(f->d_name) + 1U; recbuf->buf = erealloc(recbuf->buf, recbuf->size); } stpcpy(&recbuf->buf[len], f->d_name); - if (calculate_and_print(recbuf->buf, group, global, recbuf)) + if (calculate_and_print(recbuf->buf, group, global, recbuf, 0, xlink, xdev, dev)) goto recusion_error; } recbuf->len = old_len; recbuf->buf[recbuf->len] = '\0'; if (errno) { + recusion_error_print: weprintf("%s:", file); recusion_error: closedir(dir); @@ -63,7 +82,8 @@ as_file: int calculate_and_print_each(char **files, struct algorithm *algorithms, size_t nalgorithms, - size_t nthreads, enum format format, int hexinput, int recursive) + size_t nthreads, enum format format, int hexinput, int recursive, + int xdev, int xlink) { struct recursion_buffer recbuf = {NULL, 0, 0}; size_t wanted_nalgorithms = nalgorithms; @@ -85,7 +105,7 @@ calculate_and_print_each(char **files, struct algorithm *algorithms, size_t nalg createbarriergroup(&group, nthreads, &global); for (; *files; files++) - if (calculate_and_print(*files, &group, &global, recursive ? &recbuf : NULL)) + if (calculate_and_print(*files, &group, &global, recursive ? &recbuf : NULL, 1, xlink, xdev, 0)) ret = 2; if (global.nalgorithms != wanted_nalgorithms) diff --git a/keccak224sum.1 b/keccak224sum.1 index f1761e3..f3e6a32 100644 --- a/keccak224sum.1 +++ b/keccak224sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/keccak256sum.1 b/keccak256sum.1 index e39bf56..ccfce96 100644 --- a/keccak256sum.1 +++ b/keccak256sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/keccak384sum.1 b/keccak384sum.1 index 774ca03..fbcf6d3 100644 --- a/keccak384sum.1 +++ b/keccak384sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/keccak512sum.1 b/keccak512sum.1 index 4858004..e29d6e0 100644 --- a/keccak512sum.1 +++ b/keccak512sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/keccaksum.1 b/keccaksum.1 index 8b27314..cbc76ee 100644 --- a/keccaksum.1 +++ b/keccaksum.1 @@ -135,6 +135,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -55,17 +55,37 @@ parseopt_vendor(void *config_, char *opt, char *val) eprintf("-W option \"%s\" expected positive integer value or \"auto\"", opt); } else if (!strcmp(opt, "recursive")) { - /* TODO the default behaviour should be to not traverse across mount points, - * not to not follow symbolic links, however this should be tweakable */ - if (!val) + if (val) eprintf("-W option \"%s\" should not have an associated value", opt); config->recursive = 1; } else if (!strcmp(opt, "no-recursive")) { - if (!val) + if (val) eprintf("-W option \"%s\" should not have an associated value", opt); config->recursive = 0; + } else if (!strcmp(opt, "xdev")) { + if (val) + eprintf("-W option \"%s\" should not have an associated value", opt); + config->recursive = 1; + config->xdev = 1; + + } else if (!strcmp(opt, "no-xdev")) { + if (val) + eprintf("-W option \"%s\" should not have an associated value", opt); + config->xdev = 0; + + } else if (!strcmp(opt, "xlink")) { + if (val) + eprintf("-W option \"%s\" should not have an associated value", opt); + config->recursive = 1; + config->xlink = 1; + + } else if (!strcmp(opt, "no-xlink")) { + if (val) + eprintf("-W option \"%s\" should not have an associated value", opt); + config->xlink = 0; + } else { return 0; } diff --git a/rawshake128sum.1 b/rawshake128sum.1 index d3fa614..ad461fd 100644 --- a/rawshake128sum.1 +++ b/rawshake128sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/rawshake256sum.1 b/rawshake256sum.1 index 5932407..1627774 100644 --- a/rawshake256sum.1 +++ b/rawshake256sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/rawshake512sum.1 b/rawshake512sum.1 index 81df55c..2d43c11 100644 --- a/rawshake512sum.1 +++ b/rawshake512sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -7,7 +7,7 @@ feedbuffer(int fd, struct buffer *buffer, const char *fname) { ssize_t r; if (buffer->offset == buffer->size) - buffer->buf = erealloc(buffer->buf, buffer->size += 8096); + buffer->buf = erealloc(buffer->buf, buffer->size += 8192); again: r = read(fd, &buffer->buf[buffer->offset], buffer->size - buffer->offset); if (r <= 0) { diff --git a/rmd128sum.1 b/rmd128sum.1 index c19de2d..cd18b2e 100644 --- a/rmd128sum.1 +++ b/rmd128sum.1 @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/rmd160sum.1 b/rmd160sum.1 index e470631..c2d3367 100644 --- a/rmd160sum.1 +++ b/rmd160sum.1 @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/rmd256sum.1 b/rmd256sum.1 index 125dc68..9fd7238 100644 --- a/rmd256sum.1 +++ b/rmd256sum.1 @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/rmd320sum.1 b/rmd320sum.1 index 463ef3b..176291a 100644 --- a/rmd320sum.1 +++ b/rmd320sum.1 @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -98,6 +98,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha224sum.1 b/sha224sum.1 index 5894ef8..d206cb4 100644 --- a/sha224sum.1 +++ b/sha224sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha256sum.1 b/sha256sum.1 index eb23644..2d19e73 100644 --- a/sha256sum.1 +++ b/sha256sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha3-224sum.1 b/sha3-224sum.1 index f1c59a2..e7be65f 100644 --- a/sha3-224sum.1 +++ b/sha3-224sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha3-256sum.1 b/sha3-256sum.1 index 17c64f1..860af36 100644 --- a/sha3-256sum.1 +++ b/sha3-256sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha3-384sum.1 b/sha3-384sum.1 index 6dadf8d..eabc572 100644 --- a/sha3-384sum.1 +++ b/sha3-384sum.1 @@ -108,6 +108,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha3-512sum.1 b/sha3-512sum.1 index a3faaae..50bef69 100644 --- a/sha3-512sum.1 +++ b/sha3-512sum.1 @@ -100,6 +100,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -l diff --git a/sha384sum.1 b/sha384sum.1 index 085c22c..1718c18 100644 --- a/sha384sum.1 +++ b/sha384sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w @@ -117,6 +117,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha512-224sum.1 b/sha512-224sum.1 index f19a592..ec49d7c 100644 --- a/sha512-224sum.1 +++ b/sha512-224sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha512-256sum.1 b/sha512-256sum.1 index 8ff46ca..2cc8fb8 100644 --- a/sha512-256sum.1 +++ b/sha512-256sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/sha512sum.1 b/sha512sum.1 index 7f0fec8..bcbb598 100644 --- a/sha512sum.1 +++ b/sha512sum.1 @@ -99,6 +99,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/shake128sum.1 b/shake128sum.1 index 59f0669..239b916 100644 --- a/shake128sum.1 +++ b/shake128sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/shake256sum.1 b/shake256sum.1 index a870510..258879c 100644 --- a/shake256sum.1 +++ b/shake256sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w diff --git a/shake512sum.1 b/shake512sum.1 index 0f34822..89879a1 100644 --- a/shake512sum.1 +++ b/shake512sum.1 @@ -113,6 +113,28 @@ option is used. .B no-recursive The utility shall traverse directories. (This is the default behaviour). +.TP +.B xdev +Implies +.B -W recursive +but also allows the recursion across mountpoints. +.TP +.B no-xdev +Disable recursion across mountpoints. +(This is the default behaviour). +Note that this does not disable +recursion by itself. +.TP +.B xlink +Implies +.B -W recursive +but also allows the recursion across symbolic links. +.TP +.B no-xlink +Disable recursion across symbolic links. +(This is the default behaviour). +Note that this does not disable +recursion by itself. .RE .TP .B -w |