Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | eval: Irregular files aren't empty | Tavian Barnes | 2020-02-14 | 3 | -2/+20 |
| | | | | | GNU find's -empty returns false for devices, sockets, etc., even though their st_size is 0. Match that behaviour. | ||||
* | time: Implement xtimegm() without mktime() | Tavian Barnes | 2020-02-13 | 1 | -32/+99 |
| | | | | Using setenv("TZ") is ugly and adds unnecessary failure paths. | ||||
* | time: Split out time-related functions from util | Tavian Barnes | 2020-02-13 | 9 | -278/+351 |
| | |||||
* | parse: Handle 1969-12-31T23:59:59Z | Tavian Barnes | 2020-02-13 | 5 | -19/+66 |
| | | | | | mktime() returns -1 on error, but also for one second before the epoch. Compare the input against localtime(-1) to distinguish those cases. | ||||
* | Implement -{a,B,c,m,}since | Tavian Barnes | 2020-02-12 | 5 | -20/+111 |
| | |||||
* | parse: Set tm_isdst to -1 | Tavian Barnes | 2020-02-12 | 1 | -1/+3 |
| | | | | | This is required by POSIX to ensure the mktime() determines itself whether DST is in effect. | ||||
* | parse: Work around missing `timezone` on FreeBSD | Tavian Barnes | 2020-02-12 | 1 | -0/+5 |
| | | | | | FreeBSD has a function timezone() that conflicts with the global variable, despite that being specified by POSIX. Use tm_gmtoff instead. | ||||
* | Implement explicit reference times (-newerXt) | Tavian Barnes | 2020-02-11 | 5 | -3/+261 |
| | |||||
* | parse: Add a missing NULL check for trie_insert_mem() | Tavian Barnes | 2020-01-22 | 1 | -0/+5 |
| | |||||
* | README: Add FreeBSD install instructions | Tavian Barnes | 2020-01-21 | 1 | -0/+3 |
| | |||||
* | tests: Make test_xattr a sudo test in exactly the right cases | Tavian Barnes | 2020-01-14 | 1 | -11/+14 |
| | | | | This was broken on GNU Hurd, for example. | ||||
* | Release 1.5.21.5.2 | Tavian Barnes | 2020-01-09 | 5 | -6/+18 |
| | |||||
* | fsade: Support checking for xattrs (extattrs) on FreeBSD | Tavian Barnes | 2020-01-08 | 4 | -26/+50 |
| | |||||
* | tests: Fix setting ACLs on Linux | Tavian Barnes | 2020-01-08 | 1 | -14/+15 |
| | |||||
* | Update copyright dates | Tavian Barnes | 2020-01-07 | 5 | -5/+5 |
| | |||||
* | util: Support ports and whiteouts in format_mode() | Tavian Barnes | 2020-01-07 | 1 | -3/+13 |
| | |||||
* | eval: For -ls, print a + if a file has ACLs | Tavian Barnes | 2020-01-07 | 1 | -1/+2 |
| | |||||
* | fsade: Support NFSv4 ACLs on FreeBSD | Tavian Barnes | 2020-01-07 | 2 | -37/+58 |
| | |||||
* | fsade: Don't treat EINVAL as an error | Tavian Barnes | 2020-01-06 | 1 | -0/+6 |
| | | | | | | | | | acl_get_file() will return EINVAL on some platforms (e.g. FreeBSD, macOS) when the requested ACL type is not supported for that file. This fixes `bfs -acl` spewing "Invalid argument." for every file on FreeBSD with ZFS where ACLs are NFSv4 and thus the POSIX.1e ones are not supported. | ||||
* | tests.sh: Bail out if setup fails | Tavian Barnes | 2019-11-01 | 1 | -0/+2 |
| | |||||
* | bftw: Avoid shadowing a variable | Tavian Barnes | 2019-11-01 | 1 | -5/+2 |
| | |||||
* | mtab: Use struct statvfs on NetBSD | Tavian Barnes | 2019-09-24 | 1 | -2/+8 |
| | | | | Fixes #53. | ||||
* | tests: Fix some comments | Tavian Barnes | 2019-09-19 | 1 | -3/+3 |
| | |||||
* | Release 1.5.11.5.1 | Tavian Barnes | 2019-09-14 | 3 | -2/+13 |
| | |||||
* | Update documentation for the -mount/-xdev revert | Tavian Barnes | 2019-09-14 | 2 | -2/+5 |
| | |||||
* | tests: Don't redirect to /dev/null when unnecessary | Tavian Barnes | 2019-09-13 | 1 | -4/+4 |
| | |||||
* | README: Add a version badge, remove the LOC badge | Tavian Barnes | 2019-09-13 | 1 | -1/+1 |
| | |||||
* | Makefile: Test different search strategies in parallel | Tavian Barnes | 2019-09-13 | 1 | -4/+4 |
| | |||||
* | Makefile: Include -fsanitize=* in the sanitizer flag variables | Tavian Barnes | 2019-09-13 | 1 | -3/+7 |
| | |||||
* | main: Add darray.[ch] to the index | Tavian Barnes | 2019-09-12 | 1 | -0/+1 |
| | |||||
* | tests.sh: Use an array for the enabled tests | Tavian Barnes | 2019-09-11 | 1 | -15/+11 |
| | | | | | The separate $run_test_* variables were sensitive to the environment that ran the script. | ||||
* | parse: Don't treat -mount differently from -xdev yet | Tavian Barnes | 2019-09-11 | 3 | -1/+12 |
| | | | | | | | | The new POSIX version with -mount isn't out yet, so there's no point in conforming to a non-existent document while breaking compatibility with GNU find, which hasn't changed yet either. But a warning is added for the future incompatibility. This patch can be reverted to re-enable the feature. | ||||
* | tests: Add -mount/-xdev tests with -L | Tavian Barnes | 2019-09-11 | 3 | -0/+39 |
| | |||||
* | tests: Test more cases in test_color_ls | Tavian Barnes | 2019-09-05 | 2 | -5/+13 |
| | |||||
* | color: Actually resolve symlinks against their parent directory | Tavian Barnes | 2019-09-04 | 2 | -1/+2 |
| | |||||
* | color: Fix unsigned < 0 comparison | Tavian Barnes | 2019-09-03 | 1 | -1/+1 |
| | |||||
* | color: Fix directory coloring when resolving symlinks at the root | Tavian Barnes | 2019-09-03 | 3 | -27/+73 |
| | |||||
* | dstring: New dstrndup() function | Tavian Barnes | 2019-09-03 | 2 | -1/+19 |
| | |||||
* | darray: Clarify some documentation/comments | Tavian Barnes | 2019-09-02 | 2 | -15/+26 |
| | |||||
* | stat: Check that AT_STATX_DONT_SYNC exists before using it | Tavian Barnes | 2019-08-30 | 1 | -0/+3 |
| | |||||
* | mtab: Rename maybe_mount to might_be_mount | Tavian Barnes | 2019-08-29 | 3 | -3/+3 |
| | |||||
* | mtab: Lazy-load the device IDs from the mount table | Tavian Barnes | 2019-08-29 | 1 | -27/+66 |
| | | | | Fixes #50. | ||||
* | mtab: Use BFS_STAT_NOSYNC | Tavian Barnes | 2019-08-29 | 1 | -69/+41 |
| | | | | | And factor out the stat() call into bfs_mtab_add(). One step toward improving #50, at least on Linux. | ||||
* | stat: New BFS_STAT_NOSYNC flag | Tavian Barnes | 2019-08-29 | 2 | -0/+5 |
| | |||||
* | darray: New dynamic array library | Tavian Barnes | 2019-08-29 | 6 | -19/+210 |
| | |||||
* | tests: Bail out of ACL tests if we can't set ACLs | Tavian Barnes | 2019-08-23 | 1 | -10/+6 |
| | | | | Hopefully fixes #52. | ||||
* | color: Color leading directories as errors if they don't exist | Tavian Barnes | 2019-08-23 | 1 | -5/+74 |
| | | | | Fixes #51. | ||||
* | spawn: Actually fix moving the pipe out of the way | Tavian Barnes | 2019-07-08 | 1 | -7/+7 |
| | | | | | We have to check in_fd after out_fd, otherwise the dup() may move it to in_fd. | ||||
* | spawn: Fix moving the pipe out of the way | Tavian Barnes | 2019-07-05 | 1 | -3/+9 |
| | | | | | The old code could dup() the pipe from in_fd to out_fd, for example, and neglected to keep it CLOEXEC. | ||||
* | stat: Treat EPERM like ENOSYS for statx() | Tavian Barnes | 2019-07-05 | 1 | -1/+3 |
| | | | | | | | | | On some configurations (e.g. old Docker with the default seccomp() profile), statx() fails with EPERM. Consider this to mean statx() is unsupported, as EPERM is not a documented error code in normal operation. Possible fix for https://github.com/alpinelinux/aports/pull/9277 |