kettenis [Thu, 13 Apr 2017 20:48:29 +0000 (20:48 +0000)]
Use the non-interrupt-safe pool allocator for the vp pool to avoid runninng
out of kva in the kmem_map. Avoids a hang when spawning a lot of processes.
brynet [Thu, 13 Apr 2017 18:36:51 +0000 (18:36 +0000)]
Use recallocarray in getdelim/getline to clear memory on buffer resizes,
inspired by a similar change to fgetln.
ok deraadt millert
otto [Thu, 13 Apr 2017 18:32:55 +0000 (18:32 +0000)]
allow clearing less than allocated and document freezero(3) better
tedu [Thu, 13 Apr 2017 15:32:15 +0000 (15:32 +0000)]
moving some code into a switch meant that break no longer stopped the loop.
try harder with a goto. diagnosis and original fix by tb.
krw [Thu, 13 Apr 2017 14:59:40 +0000 (14:59 +0000)]
Remove a bunch of obsolete, unused and irrelevant DHCP client types, fields,
and enums.
deraadt [Thu, 13 Apr 2017 14:48:31 +0000 (14:48 +0000)]
multi-statement CHECK_RANGE() macro isn't safe for all placements, and
needs to use "do {} while 0" idiom; all callers need repair also.
Discovered by jsg
jsg [Thu, 13 Apr 2017 07:30:21 +0000 (07:30 +0000)]
fix wrongly indented lines
patrick [Thu, 13 Apr 2017 07:04:09 +0000 (07:04 +0000)]
Add a NAT-T keepalive timer in case we are behind a NAT gateway.
See RFC 5996, section 2.23, NAT Traversal:
In the case of a mismatching NAT_DETECTION_DESTINATION_IP hash, it
means that the system receiving the NAT_DETECTION_DESTINATION_IP
payload is behind a NAT and that system SHOULD start sending
keepalive packets as defined in [UDPENCAPS].
With markus@, ok reyk@
guenther [Thu, 13 Apr 2017 04:09:46 +0000 (04:09 +0000)]
regen
guenther [Thu, 13 Apr 2017 04:06:46 +0000 (04:06 +0000)]
Delete the getlogin59 syscall, which was last used one year, two releases,
and four libc major versions ago
ok sthen@ jsing@ deraadt@ jca@
guenther [Thu, 13 Apr 2017 03:52:25 +0000 (03:52 +0000)]
Provide mips64 with kernel-facing TCB_{GET,SET} macros that store it
in struct mdproc. With that, all archs have those and the __HAVE_MD_TCB
macro can be unifdef'ed as always defined.
ok kettenis@ visa@ jsing@
krw [Wed, 12 Apr 2017 19:19:11 +0000 (19:19 +0000)]
Inspired by recent dhcrelay changes, bring in stricter CFLAGS!
krw [Wed, 12 Apr 2017 19:17:30 +0000 (19:17 +0000)]
One 'foo' per function is enough. Rename one to eliminate shadowing.
krw [Wed, 12 Apr 2017 19:12:01 +0000 (19:12 +0000)]
Add missing function prototypes. Mark kw_cmp() as static like all
its friends.
florian [Wed, 12 Apr 2017 18:35:50 +0000 (18:35 +0000)]
The kernel has to slightly different version of SipHash_Final but with
the same bug as just fixed in userland:
----------
SipHash_Final() was assuming the digest was 64-bit aligned, resulting in
misaligned memory accesses with armv7 ramdisk -Os bsd.rd ping
ok florian millert
----------
OK deraadt@
tb [Wed, 12 Apr 2017 18:24:37 +0000 (18:24 +0000)]
Use calloc(3) and recallocarray(3) instead of *alloc* + memset(0).
ok deraadt
deraadt [Wed, 12 Apr 2017 17:41:49 +0000 (17:41 +0000)]
SipHash_Final() was assuming the digest was 64-bit aligned, resulting in
misaligned memory accesses with armv7 ramdisk -Os bsd.rd ping
ok florian millert
millert [Wed, 12 Apr 2017 16:06:12 +0000 (16:06 +0000)]
New strstr() implementation from musl libc by Rich Felker. This
version uses the two-way string matching algorithm and is faster
than the old implementation. With this change, ports that check
for strstr having linear complexity time strstr will no longer
replace the libc strstr with a private version.
OK deraadt@ espie@
millert [Wed, 12 Apr 2017 15:23:08 +0000 (15:23 +0000)]
Prevent inosused from wrapping when soft updates is enabled while
scanning the used inode map. The code as written assumes inosused
is signed but this is no longer the case. OK deraadt@
millert [Wed, 12 Apr 2017 14:53:27 +0000 (14:53 +0000)]
isblank() is ANSI C since C99, no need to provide a replacement.
OK deraadt@
deraadt [Wed, 12 Apr 2017 14:49:05 +0000 (14:49 +0000)]
bluhm discovered "script < /dev/null" attempts tty operations in violation
of pledge. We can wrap isatty() around those codepaths.
ok bluhm beck
bluhm [Wed, 12 Apr 2017 14:46:31 +0000 (14:46 +0000)]
Add comment what the test does.
krw [Wed, 12 Apr 2017 14:08:15 +0000 (14:08 +0000)]
RTM_PROTO3 messages should not trigger a resolv.conf check.
bluhm [Wed, 12 Apr 2017 13:14:08 +0000 (13:14 +0000)]
The pledge sigkill test is an outdated copy of sigabrt. Remove the
former and activate the latter.
OK semarie@
krw [Wed, 12 Apr 2017 12:22:25 +0000 (12:22 +0000)]
Shuffle another function.
bluhm [Wed, 12 Apr 2017 11:55:41 +0000 (11:55 +0000)]
Add comment how the test works.
jsg [Wed, 12 Apr 2017 08:02:10 +0000 (08:02 +0000)]
explicitly set the ownership on installed include files as well
jsg [Wed, 12 Apr 2017 07:57:06 +0000 (07:57 +0000)]
Invoke install -d for each directory in the /usr/lib/clang hierarchy
as they aren't in mtree. Problem with wrong ownership and permission
of directories reported by sthen@.
ok deraadt@ sthen@ tb@
guenther [Wed, 12 Apr 2017 05:46:59 +0000 (05:46 +0000)]
Correct a format string
Problem noted by Michael W. Bombardieri (mb(at)ii.net)
ok mlarkin@ deraadt@
sthen [Tue, 11 Apr 2017 20:40:43 +0000 (20:40 +0000)]
- Mention LIBCXX, prompted by espie@.
sthen [Tue, 11 Apr 2017 20:40:33 +0000 (20:40 +0000)]
- Mention LIBCXX, prompted by espie@.
- Make it clear that CLANG_ARCHS, GCC3_ARCHS, GCC4_ARCHS refer to the base compiler.
Change "Clang 3.9.1" to just "Clang".
rpe [Tue, 11 Apr 2017 19:23:10 +0000 (19:23 +0000)]
Ensure that the version part of $_url_base is correctly removed by
using $VNAME (x.y) instead of $VERSION (xy). This fixes the problem
that the version part ended up in installurl which is wrong anyway
and also confuses pkg_add.
Thanks to florian@ and trondd at kagu-tsuchi dot com for reporting
this.
OK tb@
deraadt [Tue, 11 Apr 2017 19:01:24 +0000 (19:01 +0000)]
sync
schwarze [Tue, 11 Apr 2017 17:01:11 +0000 (17:01 +0000)]
shorten introductory sentence and make deprecation clearer;
disgussed with deraadt@
bluhm [Tue, 11 Apr 2017 15:55:41 +0000 (15:55 +0000)]
Add SIOCATMARK to allow pledge("inet") programs to call sockatmark(3).
from Matthias Pitzl; OK deraadt@
kettenis [Tue, 11 Apr 2017 15:16:14 +0000 (15:16 +0000)]
Recognize break conditions and enter ddb if ddb.console is set.
ok visa@, deraadt@
dhill [Tue, 11 Apr 2017 14:43:49 +0000 (14:43 +0000)]
Partially revert previous mallocarray conversions that contain
constants.
The consensus is that if both operands are constant, we don't need
mallocarray. Reminded by tedu@
ok deraadt@
krw [Tue, 11 Apr 2017 13:59:27 +0000 (13:59 +0000)]
Shuffle route/interface changing functions together into kroute.c. Try to
group related functions in kroute.c together and comment them a bit.
No intentional functional change.
jsing [Tue, 11 Apr 2017 13:14:08 +0000 (13:14 +0000)]
Revert ssl_asn1.c r1.50 - CBB and freezero(3) do not play nicely together.
Back this out while we investigate and implement a solution.
Found the hard way by sthen@
espie [Tue, 11 Apr 2017 11:01:28 +0000 (11:01 +0000)]
document more thoroughly the special status of modules gnu, imake, perl5
(for historical reasons)
okay aja@
krw [Tue, 11 Apr 2017 10:40:14 +0000 (10:40 +0000)]
Fold priv_write_file() into its only remaining user
priv_write_resolv_conf() and move the latter into kroute.c
with all its priv_ friends.
No intentional functional change.
reyk [Tue, 11 Apr 2017 09:57:19 +0000 (09:57 +0000)]
Use freezero(3) for the imsg framework in imsg_free(3) and ibuf_free(3).
In our privsep model, imsg is often used to transport sensitive
information between processes. But a process might free an imsg, and
reuse the memory for a different thing. iked uses some
explicit_bzero() to clean imsg-buffer but doing it in the library with
the freezero() is less error-prone and also benefits other daemons.
OK deraadt@ jsing@ claudio@
kettenis [Tue, 11 Apr 2017 06:52:13 +0000 (06:52 +0000)]
Revise 'struct fpreg' and dump floating-point register in core dumps. Also
reset the floating-point register state upon exec.
ok guenther@
krw [Mon, 10 Apr 2017 21:47:44 +0000 (21:47 +0000)]
Rework -L logic to use the idiom used in handling the leases file.
i.e. open FILE during program set up and use the FILE created for
the rest of the program lifetime after dropping privilege and
pledge()'ing. No need for passing messages to the priv process.
Tweak lease file handling a bit in passing.
Monitoring the -L file with external programs like sysutils/entr
still works.
Looks good to sthen@.
schwarze [Mon, 10 Apr 2017 17:45:06 +0000 (17:45 +0000)]
new X25519(3) manual page;
from Dr. Stephen Henson <steve@openssl.org>, OpenSSL commit
d218f3c3
jsing [Mon, 10 Apr 2017 17:27:33 +0000 (17:27 +0000)]
Use freezero() for the internal opaque structures, instead of the current
explicit_bzero()/free(). Less code and potentially less overhead.
jsing [Mon, 10 Apr 2017 17:25:22 +0000 (17:25 +0000)]
Use freezero() for X25519 keys - same result with more readable code.
schwarze [Mon, 10 Apr 2017 17:14:44 +0000 (17:14 +0000)]
document three additional functions;
from Emilia Kasper <emilia at openssl dot org>, OpenSSL commit
4ac139b4
jsing [Mon, 10 Apr 2017 17:12:30 +0000 (17:12 +0000)]
Rework and significantly extend TLS name verification tests to match
changes in libtls.
jsing [Mon, 10 Apr 2017 17:11:13 +0000 (17:11 +0000)]
Rework name verification code so that a match is indicated via an argument,
rather than return codes. More strictly follow RFC 6125, in particular only
check the CN if there are no SAN identifiers present in the certificate
(per section 6.4.4).
Previous behaviour questioned by Daniel Stenberg <daniel at haxx dot se>.
ok beck@ jca@
deraadt [Mon, 10 Apr 2017 17:01:06 +0000 (17:01 +0000)]
sync
jsing [Mon, 10 Apr 2017 16:48:43 +0000 (16:48 +0000)]
freezero() the key block; simpler code and less of it.
jsing [Mon, 10 Apr 2017 16:47:08 +0000 (16:47 +0000)]
Use freezero() for i2d_SSL_SESSION() - one line of code instead of three.
In this case the memory allocated can also be significant, in which case
freezero() will have less overhead than explicit_bzero() (munmap instead
of touching all of the memory to write zeros).
jca [Mon, 10 Apr 2017 16:20:31 +0000 (16:20 +0000)]
Fix tabs in example code.
schwarze [Mon, 10 Apr 2017 16:11:50 +0000 (16:11 +0000)]
fix some .Xr errors that jmc@ found with mdoclint(1)
schwarze [Mon, 10 Apr 2017 15:54:46 +0000 (15:54 +0000)]
new manual page SSL_get_server_tmp_key(3)
from Matt Caswell <matt@openssl.org>, OpenSSL commit
508fafd8
schwarze [Mon, 10 Apr 2017 15:37:55 +0000 (15:37 +0000)]
Additional SSL_SESSION documentation
from Matt Caswell <matt at openssl dot org>, OpenSSL commit
b31db505.
Improve crosslinking while here.
jmc [Mon, 10 Apr 2017 14:46:13 +0000 (14:46 +0000)]
slaacdctl -> slaacctl;
visa [Mon, 10 Apr 2017 14:35:30 +0000 (14:35 +0000)]
Use __ASSEMBLER__ instead of __LANGUAGE_ASSEMBLY.
The latter is not defined by clang.
OK guenther@, kettenis@
deraadt [Mon, 10 Apr 2017 14:32:47 +0000 (14:32 +0000)]
Found another len += snprintf...
ok mikeb
deraadt [Mon, 10 Apr 2017 14:22:03 +0000 (14:22 +0000)]
sync
schwarze [Mon, 10 Apr 2017 14:00:51 +0000 (14:00 +0000)]
for pure *_ctrl() wrapper macros, move the reference from ssl(3)
to SSL_CTX_ctrl(3) to make ssl(3) slightly more palatable
fcambus [Mon, 10 Apr 2017 13:56:16 +0000 (13:56 +0000)]
Clean up disabled declaration in the text struct.
OK deraadt@
jsg [Mon, 10 Apr 2017 13:40:36 +0000 (13:40 +0000)]
sync
kettenis [Mon, 10 Apr 2017 13:36:04 +0000 (13:36 +0000)]
Generate and install arm_neon.h on arm and arm64.
ok jsg@
florian [Mon, 10 Apr 2017 13:35:42 +0000 (13:35 +0000)]
The canonical name for ctl programs is without 'd'.
Pointed out by Brad.
OK deraadt@
schwarze [Mon, 10 Apr 2017 13:05:06 +0000 (13:05 +0000)]
new manual page SSL_CTX_set_tlsext_servername_callback(3) for SNI;
from <Jon dot Spillett at oracle dot com>
via OpenSSL commit
8c55c461
reyk [Mon, 10 Apr 2017 09:27:08 +0000 (09:27 +0000)]
Check early if the mandatory carp "interface" was configured.
This allows the new -n config check to work correctly.
OK jsg@ deraadt@
fcambus [Mon, 10 Apr 2017 08:19:12 +0000 (08:19 +0000)]
Remove always false comparison: inosused type is ino_t, which is
unsigned.
While there, fix a whitespace issue.
OK deraadt@
jmc [Mon, 10 Apr 2017 06:31:31 +0000 (06:31 +0000)]
tweak previous;
jsing [Mon, 10 Apr 2017 06:09:32 +0000 (06:09 +0000)]
Convert various client key exchange functions to freezero(3). The memory
contents needs to be made inaccessible - this is simpler and less error
prone than the current "if not NULL, explicit_bzero(); free()" dance.
deraadt [Mon, 10 Apr 2017 05:47:33 +0000 (05:47 +0000)]
sync
otto [Mon, 10 Apr 2017 05:45:02 +0000 (05:45 +0000)]
Introducing freezero(3) a version of free that guarantees the process
no longer has access to the content of a memmory object. It does
this by either clearing (if the object memory remains cached) or
by calling munmap(2). ok millert@, deraadt@, guenther@
otto [Mon, 10 Apr 2017 05:10:56 +0000 (05:10 +0000)]
monir bump for freezero
jsg [Mon, 10 Apr 2017 02:15:54 +0000 (02:15 +0000)]
Attempt to map msk(4) interrupt via MSI.
The device tree that ships with the overdrive 1000 has an interrupt-map
property that is known to be wrong. Using MSI on msk makes the builtin
Ethernet on the overdrive 1000 work.
Tested on arm64 with
"Marvell Yukon
88E8059" rev 0x00, Yukon-2 Optima (0x1)
and i386 with
"Marvell Yukon
88E8072" rev 0x10, Yukon-2 Extreme rev. B0 (0x2)
Committing this early in the release cycle to try find cases where using
MSI doesn't work.
Based on part of an earlier patch from jmatthew@
ok jmatthew@ kettenis@
schwarze [Mon, 10 Apr 2017 01:46:37 +0000 (01:46 +0000)]
pasto; from <Jon dot Spillett at oracle dot com> via OpenSSL commit
3aaa1bd0
schwarze [Mon, 10 Apr 2017 01:26:54 +0000 (01:26 +0000)]
typo fix; from <Jon dot Spillett at oracle dot com>
via OpenSSL commit
7bd27895
kettenis [Sun, 9 Apr 2017 21:47:05 +0000 (21:47 +0000)]
Add a few missing quad-precision support functions on arm64 and reorder the
list to match what's in CMakeLists.txt.
ok sthen@
guenther [Sun, 9 Apr 2017 21:32:42 +0000 (21:32 +0000)]
Sync symbol lists for trap/interrupt frame detection with what ddb(4) uses
ok deraadt@
krw [Sun, 9 Apr 2017 20:44:13 +0000 (20:44 +0000)]
Seven casts, a couple of tweaks and CFLAGS+=-Wsign-compare for the
win.
No intentional functional change.
deraadt [Sun, 9 Apr 2017 19:59:43 +0000 (19:59 +0000)]
malloc -> mallocarray; a typo
dhill [Sun, 9 Apr 2017 18:16:00 +0000 (18:16 +0000)]
Convert some malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:15:32 +0000 (18:15 +0000)]
Convert a malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:15:09 +0000 (18:15 +0000)]
Convert a malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:14:39 +0000 (18:14 +0000)]
Convert a malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:09:41 +0000 (18:09 +0000)]
Convert some malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:07:19 +0000 (18:07 +0000)]
Convert some malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 18:05:17 +0000 (18:05 +0000)]
Convert some malloc(9) to mallocarray(9)
ok deraadt@
dhill [Sun, 9 Apr 2017 17:57:58 +0000 (17:57 +0000)]
Use mallocarray to allocate multicast group memberships.
ok deraadt@
deraadt [Sun, 9 Apr 2017 15:47:18 +0000 (15:47 +0000)]
Correct wakeup() dance in sensor_task_work()
Problem noticed by krw
jsing [Sun, 9 Apr 2017 15:06:20 +0000 (15:06 +0000)]
Simplify/clean up BUF_MEM_grow_clean().
ok beck@
jsing [Sun, 9 Apr 2017 15:03:54 +0000 (15:03 +0000)]
With recallocarray() BUF_MEM_grow() is essentially the same as
BUF_MEM_grow_clean() (the only difference is clearing on internal down
sizing), so make it a wrapper.
ok beck@ deraadt@
jsing [Sun, 9 Apr 2017 14:33:21 +0000 (14:33 +0000)]
Explicitly test for NULL.
ok beck@
jsing [Sun, 9 Apr 2017 14:31:44 +0000 (14:31 +0000)]
Improve unknown protocol version handling.
natano [Sun, 9 Apr 2017 09:58:53 +0000 (09:58 +0000)]
Remove unused #define's and struct.
florian [Sun, 9 Apr 2017 09:13:28 +0000 (09:13 +0000)]
image/svg+xml is a default inbuilt media type.
Pointed out by Anton Lindqvist (anton.lindqvist AT gmail), thanks!
jsg [Sun, 9 Apr 2017 02:40:24 +0000 (02:40 +0000)]
Fix multiple cases of reading past the end of a buffer in the sasyncd(8)
config parser found with afl.
feedback and ok millert@ ok deraadt@
gsoares [Sat, 8 Apr 2017 22:59:09 +0000 (22:59 +0000)]
snprintf() format string should be literal
avoid compiler silly warnings
sure deraadt@
gsoares [Sat, 8 Apr 2017 22:50:41 +0000 (22:50 +0000)]
format string is better be literal
OK deraadt
kettenis [Sat, 8 Apr 2017 22:38:17 +0000 (22:38 +0000)]
For legacy interrupt use the tag of the topmost bridge to establish the
interrupt. We already correctly swizzle the pin.
ok patrick@