Age | Commit message (Collapse) | Author |
|
which presumably meant passing stack garbage in the tv_usec and
failing with EINVAL, whee. Switch to futimens() and set the full
timespecs from the incoming struct stat
ok millert@
|
|
ok miod@ millert@
|
|
amendments to his diff are noted on tech
|
|
ton of namespace intrusion). Create local sizes, and refactor some code
along the way.
ok millert
|
|
|
|
3rd (variadic) mode_t parameter is irrelevant. Many developers in the past
have passed mode_t (0, 044, 0644, or such), which might lead future people
to copy this broken idiom, and perhaps even believe this parameter has some
meaning or implication or application. Delete them all.
This comes out of a conversation where tb@ noticed that a strange (but
intentional) pledge behaviour is to always knock-out high-bits from
mode_t on a number of system calls as a safety factor, and his bewilderment
that this appeared to be happening against valid modes (at least visually),
but no sorry, they are all irrelevant junk. They could all be 0xdeafbeef.
ok millert
|
|
Problem reported by Josh Rickmar.
ok millert@
|
|
|
|
may modify the string buffer.
ok florian@ millert@
|
|
Merges with a file that lacks newlines (\n) were triggering a fatal error.
This could be easily reproduced with merge(1) and diff3(1):
$ echo foo > foo
$ echo bar > bar
$ echo -n baz > baz
$ merge -p foo bar baz
merge: failed to merge
$ diff3 -E foo bar baz
1a
=======
diff3prog: logic error
$
Fix this by properly handling short reads from the third file argument.
Only the third file argument triggered the problem. The other input
files were already handled correctly.
ok millert@
|
|
value < 0. errno is only updated in this case. Change all (most?)
callers of syscalls to follow this better, and let's see if this strictness
helps us in the future.
|
|
(very sloppy specification) leaves an undefined value in *ret, so it is
wrong to inspect it, the error condition is enough.
discussed a little with nicm, and then much more with millert until we
were exasperated
|
|
ok deraadt@
|
|
one case reported by Fabio Scotoni <fabio at esse dot ch>,
the rest found with regress/usr.bin/mandoc/db/dbm_dump
|
|
depend on it being CVS_FILE explicitly.
unbreaks remote operations on removed files.
|
|
|
|
generate the log line. Fixes a clang warning about using the wrong
size argument in strlcpy(). The existing code was safe but not
good strlcpy() practice. OK otto@
|
|
host name. Adapted from a MirBSD diff by Thorsten Glaser.
|
|
ok joris@
|
|
Otherwise we end up calling cvs_repository_unlock() with garbage from the
stack if we're dealing with a remote cvsroot.
|
|
The file status may be unknown until after that call.
|
|
Instead use cvsroot_is_local() and cvsroot_is_remote().
|
|
This flag tells our file recursion code that for each directory entered
we should lock it. Commit however locks all relevant directories on its
own when it is about to make changes and should not depend on the file
recursion code to do so.
|
|
|
|
|
|
|
|
While here make sure the "up-to-date" check (-c) works as one expects.
|
|
tag from Entries for a given file if the sticky tag is present.
while changing this we can simplify some logic in update.c on how it
decides what tag to use for file classification.
|
|
ok stsp@
|
|
Gets rid of the old logic that wasn't working and replaced it with
a simplified version.
ok stsp@
|
|
represents if it is a branch or a revision.
ok stsp@
|
|
ok stsp@
|
|
|
|
|
|
a while() loop is a trap for the unwary programmer (albeit a clever
trap). Break this up into two separate assignments and using boolean
OR for clarity. OK otto@
|
|
OK millert@
|
|
It was already removed from the rcs version by nicm@.
|
|
|
|
In certain cases update -r and update -A would not properly set or reset
the sticky tag for file(s).
From Joris Vink.
OK millert@
|
|
OK millert@
|
|
lookup so update -r actually works again, as a bonus throw a more
correct error when the revision could not be found. From Joris Vink.
|
|
not the size of a pointer. From Joris Vink. OK fcambus@
|
|
OK tb@
|
|
ok deraadt
|
|
(committing without log message) but a)bort. Also, accept
the uppercase versions of the choices.
Matches the corresponding change of behavior of GNU cvs.
suggested by & ok jcs
|
|
|
|
|
|
|
|
I have not looked into adding stricter pledges later in the code.
|
|
ok nicm
|