aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/cp.c
AgeCommit message (Collapse)Author
2018-12-04Clean up some --help formatting.Elliott Hughes
Be consistent about upper versus lower case. (Upper seems to have the majority, so I went with that, though I'm happy to provide the opposite patch as long as we're consistent!) Be consistent about using \t. (Though saving a few bytes seems like it might be better done in the code that generates help.h rather than directly in the source, since tabs make careful ASCII art layout hard enough that we regularly have things misaligned.) Remove trailing periods (most of which seem to have been added by me). Always use the US "human readable" rather than my British "human-readable", and be more consistent about declaring whether we're showing multiples of 1000 or 1024. Just say "verbose" rather than adding a useless "mode" or "output".
2018-11-17Volodymyr Medvid reported that install -d doesn't honor -o or -g.Rob Landley
2018-08-31Convert option style.Rob Landley
2018-04-12Fix "cp -p" doesn't preserve timestamps bugMinghui Liu
2018-04-08Add cp --parentsRob Landley
2017-01-28Add missing `static`s and remove an unused function.Elliott Hughes
2016-08-18Change xgetpwnamid/xgetgrnamid to xgetuid/xgetgid returning the id numberRob Landley
instead of a struct. This means it can return "12345" even if that user/group doesn't exist in /etc/passwd and similar. All the users were immediately dereferencing it to get pw_uid or gr_gid anyway, so just return it directly and adjust the users. This fixes things like "chown 12345:23456 filename".
2016-06-15Add readlink0() and readlinkat0() which null terminate the data.Rob Landley
2016-06-09Fix dangling link after cp commandKyungsik Lee
"toybuf" should be initialized before calling symlinkat() or dangling link could occur.
2016-05-31In cp -a, don't complain if non-root user can't chown, failure is expected.0.7.1Rob Landley
2016-05-30Add output path to cp error message filenames.Rob Landley
2016-03-30Whitespace and comment.Rob Landley
2016-03-30Implement mv -n / cp -n (no clobber).Andy Chu
This fixes a failing test case in mv.test. Test changes: - Add coverage for -i (interactive). - Better descriptions, better formatting, and removed some redundant cases.
2016-03-12Update scripts/single.sh and cp.c so "make mv" isn't actually building cp.Rob Landley
2016-03-12The xattr functions were added during the 2.5 kernel, lsm.h can #include theRob Landley
header unconditionally. (This fixes the warning when CP_PRESERVE disabled.)
2016-03-07Cleanup pass on the dirtree infrastructure, in preparation for making rm -rRob Landley
handle infinite depth. Fix docs, tweak dirtree_handle_callback() semantics, remove dirtree_start() and don't export dirtree_handle_callback(), instead offer dirtree_flagread(). (dirtree_read() is a wrapper around dirtree_flagread passing 0 for flags.)
2016-02-01Fix directory test in cp.Elliott Hughes
Commit 3d33dd80f8cb931e293d7f64c44bc357fec11120 fixed a use of S_ISDIR on st_dev rather than st_mode in find, but there was another instance of the same error in cp.
2016-01-05Add error_msg_raw() and friends, replace error_msg("%s", s) uses, enable formatRob Landley
checking, and fix up format checking complaints. Added out(type, value) function to stat to avoid a zillion printf typecasts.
2015-12-22First guess at cp xattr support, ala --preserve=context,xattrRob Landley
2015-12-22Convert cp from magic constants to TAGGED_ARRAY()Rob Landley
2015-10-27Install without a mode should use 0755, and check FLAG_preserve instead ofRob Landley
the global so "install -g 0" doesn't alias to "cp --preserve 0" and error out. through to --preserve 0"
2015-09-07Remove prompt argument from yesno(), caller can fprintf(stderr, "blah") itself.Rob Landley
This fixes the build break, the change to yesno() prototype accidentally got checked in last commit. (Oops, sorry.)
2015-08-30Fix mv on overwrite.Elliott Hughes
We need to remove the destination, not the source, to be able to overwrite.
2015-07-03First pass on cp --preserveRob Landley
2015-05-10Cleanups of dirtree_start() calls. (Don't need to feed in flag values, justRob Landley
symfollow true/false.)
2015-05-09Add DIRTREE_SHUTUP to disable dirtree warnings if file vanishes out fromRob Landley
under traversal. Pass through full flag set in dirtree_add_node(), add dirtree_start() wrapper to provide symlink-only behavior (avoiding a lot of DIRTREE_SYMFOLLOW*!!(logic) repeated in callers).
2015-03-21install -D bugfix from David Halls.Rob Landley
(I tweaked some comment text while I was there.)
2015-03-12Make install support numeric uid/gids (reported by Kylie McClain).Rob Landley
2015-03-01Patches from Elliott Hughes to fix various printf() format strings.Rob Landley
(Don't specify the space flag when it's the default behavior. The ifconfig stuff was actual bugs.)
2015-02-15Add --remove-destination longopt for -F because the host version doesn't ↵Rob Landley
have a shortopt for it.
2014-12-31When CP_MORE was disabled, the d flag was still in the [-exclusion] list at ↵Rob Landley
the end and option parsing fell off the end looking for it (segfault) if DEBUG wasn't enabled to check for that.
2014-12-18Decouple cp and mv so mv uses its own --help text.Rob Landley
MV still requires CP enabled until the flag generation logic gets updated.
2014-11-22As long as Android's going to require fortify, fixup the warnings it generates.Rob Landley
2014-10-14Fix last night's mv commit (use dest, not source).Rob Landley
2014-10-14Implement mv -f and -i.Rob Landley
2014-10-09Various bugfixes (mostly resource leaks) from Ashwini Sharma's static ↵Rob Landley
analysis, plus occasional tweak by me while reviewing them.
2014-09-14Split xpopen() into xpopen_both(), xpopen(), and xrun() depending on whether ↵Rob Landley
we want to redirect both, one, or neither of stdin/stdout.
2014-09-01Add cp -F to force delete of existing destination files, and make install ↵Rob Landley
command use that. -F is equivalent to the gnu/dammit flag --we-think-long-options-without-short-options-are-a-good-idea
2014-08-16Add install to cp/mv.Rob Landley
2014-07-26Move DIRTREE_COMEAGAIN second callback up to when the filehandle is still ↵Rob Landley
open, and add dir->again variable to distinguish second call instead of checking for -1 filehandle.
2014-07-14Implement -HL for cp.Rob Landley
2014-02-04Tweak help text.Rob Landley
2014-01-16Rename xmsprintf() to just xmprintf().Rob Landley
Partly because there's no supplied target string ala sprintf, and partly because I can never remember what order the m and s go in.
2013-08-01Need to specify bool for CP_MV_MORE config symbol to avoid warnings.Rob Landley
2013-06-22Implement mv as an extension of cp.Rob Landley
2013-02-10Implement cp -s option.Rob Landley
2013-01-31Fix -in behavior: descend into existing directory without prompting, show ↵Rob Landley
full path in error messages, actually overwrite when answering yes to -i.
2013-01-18Adjust umask(0) for cp -p so mknod doesn't have to try to fchmodat() without ↵0.4.3Rob Landley
the unsupported symlink nofollow flag.
2013-01-16Make "sudo cp -rp /dev/null blah" work. Still not happy with it, ↵Rob Landley
fchmodat(AT_SYMLINK_NOFOLLOW) doesn't work (there's a glibc bug open for this. It's really a missing kernel syscall, but glibc fails without ever making any syscall if you feed it that flag, which isn't helpful).
2013-01-12Update -p and -f to apply properly to various conditions. Still some bugs to ↵Rob Landley
squeeze out but this gets the infrastructure mostly right (and does away with the remaining gotos).