| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
PR: 125746
|
|
|
|
|
|
|
| |
this commit, sprintf("%s", "") could fail depending on what happened
to be on the stack.
Found by: LLVM/Clang Static Checker
|
|
|
|
|
|
|
|
|
| |
to this commit, "env BLOCKSIZE=4X df" prints not only "4X: unknown
blocksize" as expected, but sometimes also "maximum blocksize is 1G"
and "minimum blocksize is 512" depending on what happened to be on
the stack.
Found by: LLVM/Clang Static Checker
|
|
|
|
|
|
|
|
|
| |
environ[0] to be more obvious that environ is not NULL before environ[0]
is tested. Although I believe the previous code worked, this change
improves code maintainability.
Reviewed by: ache
MFC after: 3 days
|
|
|
|
|
| |
PR: 125253
Submitted by: Mateusz Guzik <mjguzik@gmail.com> (original version)
|
|
|
|
|
|
|
|
|
| |
assumed to be reviewd by them):
Stir directly from the kernel PRNG, without taking less random pid & time
bytes too (when it is possible).
The difference with OpenBSD code is that they have KERN_ARND sysctl for
that task, while we need to read /dev/random
|
|
|
|
| |
Submitted by: ed
|
|
|
|
|
|
|
|
|
| |
wide string arguments.
Also simplify the code that handles length modifiers and make it
more conservative. For instance, be explicit about the modifiers
allowed for %d, rather than assuming that anything other than L,
q, t, or z implies an int argument.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the first value (environ[0]) to NULL. This is in addition to the
current detection of environ being replaced, which includes being set to
NULL. Without this fix, the environment is not truly wiped, but appears
to be by getenv() until an *env() call is made to alter the enviroment.
This change is necessary to support those applications that use this
method for clearing environ such as Dovecot and Postfix. Applications
such as Sendmail and the base system's env replace environ (already
detected). While neither of these methods are defined by SUSv3, it is
best to support them due to historic reasons and in lieu of a clean,
defined method.
Add extra units tests for clearing environ using four different methods:
1. Set environ to NULL pointer.
2. Set environ[0] to NULL pointer.
3. Set environ to calloc()'d NULL-terminated array.
4. Set environ to static NULL-terminated array.
Noticed by: Timo Sirainen
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I guess the original author of the popen() code didn't want to use our
<sys/queue.h> macro's, because the single linked list macro's didn't
offer O(1) deletion. Because I introduced SLIST_REMOVE_NEXT() some time
ago, we can now use the macro's here.
By converting the code to an SLIST, it is more consistent with other
parts of the C library and the operating system.
Reviewed by: csjp
Approved by: philip (mentor, implicit)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mkstemps(), and mkdtemp().
- Add proper range checking for the 'slen' parameter passed to mkstemps().
- Try all possible permutations of a template if a collision is encountered.
Previously, once a single template character reached 'z', it would not wrap
around to '0' and keep going until it encountered the original starting
letter. In the edge case that the randomly generated starting name used
all 'z' characters, only that single name would be tried before giving up.
PR: standards/66531
Submitted by: Jim Luther
Obtained from: Apple
MFC after: 1 week
|
|
|
|
|
|
|
|
| |
It seems I made a small bug when writing some of the posix_spawn(3)
manpages. Remove the redundant "Ed Schouten", which broke the AUTHORS
section.
Approved by: philip (mentor, implicit)
|
|
|
|
| |
PR: standards/122051
|
|
|
|
|
|
|
|
|
|
|
|
| |
"If you don't get a review within a day or two, I would firmly recommend
backing out the changes"
back out all my changes, i.e. not comes from merging from OpenBSD as
unreviewed by secteam@ yet.
(OpenBSD changes stays in assumption they are reviewd by OpenBSD)
Yes, it means some old bugs returned, like not setted rs_stired = 1 in
arc4random_stir(3) causing double stirring.
|
|
|
|
| |
Submitted by: Kostik Belousov
|
|
|
|
|
|
|
|
|
|
| |
1) Unindent and sort variables.
2) Indent struct members.
3) Remove _packed, use guaranteed >128 bytes size and only first 128
bytes from the structure.
4) Reword comment.
Obtained from: bde
|
|
|
|
|
| |
XXX Deprecated
alias in /sys/dev/random/randomdev.c
|
| |
|
|
|
|
| |
return just (arc4random() % upper_bound)
|
|
|
|
| |
Obtained from: OpenBSD
|
|
|
|
|
|
|
|
| |
suggested in the Ilya Mironov's article). 768 taken from another
research where it treats as default for RC4-drop(768):
http://www.users.zetnet.co.uk/hopwood/crypto/scan/cs.html#RC4-drop
Minor style tweak.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
2) Use gettimeofday() and getpid() only if reading from /dev/urandom
fails or impossible.
3) Discard N bytes on very first initialization only (i.e. don't
discard on re-stir).
4) Reduce N from 1024 to 512 as really suggested in the
"(Not So) Random Shuffles of RC4" paper:
http://research.microsoft.com/users/mironov/papers/rc4full.pdf
|
|
|
|
|
|
|
|
|
| |
2) Eliminate "struct arc4_stream *as" arg since only single arg is
possible.
3) Set rs.j = rs.i after arc4random key schedule to be more like arc4
stream cipher.
Obtained from: OpenBSD
|
| |
|
| |
|
|
|
|
| |
Obtained from: OpenBSD
|
|
|
|
| |
Obtained from: OpenBSD
|
|
|
|
|
|
|
| |
2) Increase arc4_count to the limit OpenBSD use.
Submitted by: Thorsten Glaser <tg@mirbsd.de> (1)
Obtained from: OpenBSD (2)
|
|
|
|
|
|
|
| |
the chunk map instead of red-black trees where possible. Remove the
red-black trees and node objects that are obsoleted by this change. The
net result is a ~1-2% memory savings, and a substantial allocation speed
improvement.
|
|
|
|
|
|
|
| |
handlers added with signal(3).
Submitted by: gnn (slightly modified by me)
MFC after: 1 week
|
|
|
|
| |
PR: docs/125630
|
|
|
|
|
|
|
|
|
|
| |
This change removes the requirement that an ACL contain no ACL_USER
entries with a uid the same as those of a file, or ACL_GROUP entries
with a gid the same as those of a file. This requirement is not in the
specification, and not enforced by the kernel's ACL implementation.
Reported by: Iustin Pop <iusty at k1024 dot org>
MFC after: 1 week
|
|
|
|
|
|
| |
PR: 125546
Submitted by: Mateusz Guzik <mjguzik at gmail dot com>
MFC after: 3 days
|
|
|
|
| |
nonexistant __cpuset* there.
|
|
|
|
|
|
|
|
|
| |
statement. Add the one from the current NetBSD version.
- Also bump a date to reflect my content changes I have done in previous
revision
Approved by: imp
MFC after: 3 days
|
|
|
|
|
|
| |
PR: docs/75995
Submitted by: Tarc <tarc@po.cs.msu.su>
MFC after: 3 days
|
|
|
|
|
|
| |
- remove contractions
MFC after: 3 days
|
|
|
|
|
| |
PR: docs/120248
Submitted by: Heiko Wundram <wundram (a) beenic.net>
|
| |
|
| |
|
|
|
|
| |
bit by removing some calls to the inline function addtype().
|
|
|
|
|
|
| |
normal and wide character versions of it.
No functional change.
|
|
|
|
|
|
| |
by moving the positional argument handling code to a new file,
printf-pos.c, and moving common definitions to printflocal.h.
No functional change intended.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular, encapsulate the state of the type table in a struct,
and add inline functions to initialize, free, and manipulate that
state. This replaces some ugly macros that made proper error handling
impossible.
While here, remove an unneeded test for NULL and a variable that is
initialized (many times!) but never used. The compiler didn't catch
these because of rampant use of the same variable to mean different
things in different places.
This commit should not cause any changes in functionality.
|
|
|
|
|
|
| |
SIGPIPE for individual sockets (PR: kern/118626).
While here, s/insure/ensure/.
|
|
|
|
| |
whether the CPU supports SSE or not here is rather odious.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Save and restore the control part of the MXCSR in addition to the
i387 control word to ensure that the two are consistent.
Note that standards don't require longjmp to restore either control
word, and none of Linux, MacOS X 10.3 and earlier, NetBSD, OpenBSD,
or Solaris do it. However, it is historical FreeBSD behavior, and
bde points out that it is needed to make longjmping out of a signal
handler work properly, given the way FreeBSD clobbers the FPU state
on signal handler entry.
2. Don't clobber the FPU exception flags in longjmp. C99 requires them
to remain unchanged.
|
|
|
|
|
| |
PR: docs/123019
MFC after: 3 days
|
|
|
|
|
| |
PR: docs/122818
MFC after: 3 days
|