Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | parse: Factor out all "looks like icmp" checks | Tavian Barnes | 2017-02-09 | 1 | -11/+16 | |
| | ||||||
* | bftw: Add the DIR* to bftw_state | Tavian Barnes | 2017-02-09 | 1 | -15/+39 | |
| | | | | Can't forget to close it that way. | |||||
* | Add support for -x?type with multiple types | Tavian Barnes | 2017-02-08 | 8 | -169/+146 | |
| | | | | This functionality is already part of GNU findutils git. | |||||
* | bftw: Add mising closedir() to error path | Tavian Barnes | 2017-02-07 | 1 | -0/+1 | |
| | ||||||
* | Bail out if parse_root() fails | Tavian Barnes | 2017-02-07 | 1 | -44/+88 | |
| | | | | | | Previously, skip_paths() did not distinguish between end-of-arguments and parse_root() failing, returning NULL in both cases. If parse_root() failed, parsing would attempt to continue, in an unexpected state. | |||||
* | Add some missing perror() calls | Tavian Barnes | 2017-02-07 | 3 | -34/+39 | |
| | ||||||
* | bftw: Plug a leak if dirqueue_push() fails | Tavian Barnes | 2017-02-06 | 1 | -16/+28 | |
| | | | | | | | | | | If bftw_add() succeeds but dirqueue_push() fails, we need to clean up the just-added dircache_entry. Otherwise it will leak, and we'll also fail the cache->size == 0 assertion. Fix it by extracting the dircache-related parts of bftw_pop() into a new helper function bftw_gc(), and call it from bftw_pop() as well as the bftw_push() failure path. | |||||
* | Fix a memory leak parsing -printf | Tavian Barnes | 2017-02-06 | 3 | -1/+9 | |
| | ||||||
* | tests.sh: Set the umask before creating the test trees | Tavian Barnes | 2017-02-06 | 1 | -0/+1 | |
| | ||||||
* | Make -quit happen immediately, not at the end of the current expression | Tavian Barnes | 2017-02-05 | 4 | -4/+43 | |
| | ||||||
* | bftw: Compute nameoff correctly for the root in BFTW_DEPTH mode | Tavian Barnes | 2017-02-05 | 3 | -2/+11 | |
| | ||||||
* | Implement -printf/-fprintf | Tavian Barnes | 2017-02-05 | 17 | -46/+1087 | |
| | | | | | Based on a patch by Fangrui Song <i@maskray.me>. Closes #16. | |||||
* | Implement -nouser and -nogroup | Tavian Barnes | 2017-02-04 | 6 | -1/+62 | |
| | ||||||
* | Don't trust st_size when reading symlinks | Tavian Barnes | 2017-01-31 | 3 | -12/+44 | |
| | | | | | Linux /proc, for example, reports a st_size of 0 for everything. It's nice to be able to use -lname on them anyway. | |||||
* | Simplify exec_chdir() | Tavian Barnes | 2017-01-14 | 1 | -16/+10 | |
| | | | | | | The previous code recomputed the name offset for no reason, and had an embarrassing typo that was hypothetically a bug (`} if` instead of `} else if`). | |||||
* | Don't set _POSIX_C_SOURCE | Tavian Barnes | 2017-01-06 | 1 | -5/+4 | |
| | | | | | | The BSD behaviour is to hide all BSD extensions if standard-conformance feature test macros are present. We don't want strict POSIX, we want all available extensions, so ask for that. | |||||
* | tests: Add a test for -inum | Tavian Barnes | 2017-01-03 | 2 | -1/+9 | |
| | ||||||
* | tests: Add tests for -quit | Tavian Barnes | 2017-01-02 | 5 | -1/+27 | |
| | ||||||
* | eval: Check that O_DIRECTORY is defined before using it | Tavian Barnes | 2017-01-02 | 1 | -1/+5 | |
| | ||||||
* | travis: Do 32-bit builds too | Tavian Barnes | 2016-12-21 | 1 | -2/+13 | |
| | ||||||
* | Set _FILE_OFFSET_BITS to 64 | Tavian Barnes | 2016-12-21 | 3 | -1/+8 | |
| | | | | | With the new support for -size n[TP], this is needed to avoid overflow on 32-bit platforms. | |||||
* | Bump the version to 0.880.88 | Tavian Barnes | 2016-12-20 | 3 | -2/+19 | |
| | ||||||
* | Add some text to the -help output | Tavian Barnes | 2016-12-20 | 1 | -1/+27 | |
| | ||||||
* | Implement -mnewer | Tavian Barnes | 2016-12-20 | 4 | -1/+20 | |
| | ||||||
* | Add tera and peta suffices for -size | Tavian Barnes | 2016-12-20 | 3 | -3/+15 | |
| | ||||||
* | Implement -sparse from FreeBSD find | Tavian Barnes | 2016-12-20 | 3 | -0/+22 | |
| | ||||||
* | Support -[gu]id NAME like BSD find | Tavian Barnes | 2016-12-20 | 4 | -25/+59 | |
| | ||||||
* | Don't check errno after get{gr,pw}nam() | Tavian Barnes | 2016-12-20 | 1 | -24/+6 | |
| | | | | | Turns out it doesn't always keep errno 0, even if the only problem is a failed lookup. This was observed on a machine with Kerberos auth. | |||||
* | Implement BSD find's -depth N | Tavian Barnes | 2016-12-18 | 10 | -2/+95 | |
| | ||||||
* | tests: Allow limiting the testsuite to POSIX, BSD, GNU, and bfs-specific ↵ | Tavian Barnes | 2016-12-18 | 7 | -11/+188 | |
| | | | | features | |||||
* | tests.sh: Let the bfs binary be specified on the command line | Tavian Barnes | 2016-12-18 | 1 | -21/+35 | |
| | ||||||
* | Add support for -x (same as -mount/-xdev, from BSD) | Tavian Barnes | 2016-12-18 | 1 | -0/+1 | |
| | ||||||
* | Implement -regex, -iregex, and -regextype/-E | Tavian Barnes | 2016-12-18 | 13 | -8/+218 | |
| | ||||||
* | bftw: Clean up the dirqueue implementation a bit | Tavian Barnes | 2016-12-17 | 1 | -38/+34 | |
| | ||||||
* | Fix the build on macOS | Tavian Barnes | 2016-12-17 | 1 | -0/+1 | |
| | | | | | macOS hides st_[acm]timespec if _POSIX_C_SOURCE is defined, unless _DARWIN_C_SOURCE is too. | |||||
* | Fix the build on OpenIndiana | Tavian Barnes | 2016-12-16 | 2 | -1/+19 | |
| | ||||||
* | Add a .travis.yml | Tavian Barnes | 2016-12-08 | 2 | -0/+19 | |
| | ||||||
* | tests: Fix failure when /tmp is a symlink. | Tavian Barnes | 2016-12-08 | 1 | -1/+4 | |
| | ||||||
* | tests: Don't use install -D | Tavian Barnes | 2016-12-08 | 1 | -7/+14 | |
| | | | | -D is a GNU-ism that doesn't work on BSD or macOS. | |||||
* | tests: Don't check -size for directories | Tavian Barnes | 2016-12-05 | 5 | -29/+6 | |
| | ||||||
* | tests: Don't check -links for directories | Tavian Barnes | 2016-12-05 | 4 | -12/+3 | |
| | ||||||
* | Move portability code into util.h | Tavian Barnes | 2016-12-04 | 6 | -21/+51 | |
| | ||||||
* | Release 0.84.10.84.1 | Tavian Barnes | 2016-11-24 | 3 | -2/+19 | |
| | ||||||
* | Update some copyright dates. | Tavian Barnes | 2016-11-24 | 6 | -6/+6 | |
| | ||||||
* | Allow // to be different from / | Tavian Barnes | 2016-11-24 | 4 | -10/+8 | |
| | | | | | | POSIX says that // may be resolved in an implementation-defined way (generally, to access network shares). So don't use it in tests, and don't canonicalize it to '/' in -execdir. | |||||
* | bftw: Infer the flags in ftwbuf_stat() | Tavian Barnes | 2016-11-23 | 1 | -5/+5 | |
| | ||||||
* | tests: Make sure the temporary directory is owned by the current user/group | Tavian Barnes | 2016-11-22 | 1 | -0/+1 | |
| | | | | | BSDs apparently prefer to create new files/directories with the same group as the parent directory, rather than the current primary group. | |||||
* | tests: Mkae LC_ALL=C apply to the whole pipeline when sorting. | Tavian Barnes | 2016-11-22 | 4 | -40/+43 | |
| | ||||||
* | Don't pass AT_SYMLINK_NOFOLLOW to faccessat() | Tavian Barnes | 2016-11-22 | 1 | -1/+1 | |
| | | | | It's an invalid flag for that call, and FreeBSD actually complains. | |||||
* | bftw: Make a defensive copy of the ftwbuf | Tavian Barnes | 2016-11-21 | 1 | -1/+4 | |
| | | | | | The callback may modify the ftwbuf, but we check it after the callback (for typeflag and statbuf). Have them mutate a copy instead. |