djm [Wed, 12 Sep 2018 06:18:59 +0000 (06:18 +0000)]
fix edit mistake; spotted by jmc@
guenther [Wed, 12 Sep 2018 06:12:59 +0000 (06:12 +0000)]
Now that the pmap is more paranoid about some shootdowns (pmap.c rev 1.119),
avoid some TLB flushes by not reloading %cr3 when the value isn't changing.
original diff by and ok mlarkin@
guenther [Wed, 12 Sep 2018 06:09:39 +0000 (06:09 +0000)]
When shooting pages in the KVA range, all pmaps have the page mapped,
not just pmap_kernel() and this CPUs pmap. Meanwhile, when mapping
another pmap's tables, order the locking so that we don't need IPIs
specific to the temp pmap.
tested in snaps for a bit
ok mlarkin@
jsg [Wed, 12 Sep 2018 04:34:59 +0000 (04:34 +0000)]
Move -Wno-address-of-packed-member to the clang block as well and sync
armv7 and i386 with amd64.
ok guenther@
djm [Wed, 12 Sep 2018 01:36:45 +0000 (01:36 +0000)]
Include certs with multiple RSA signature variants in test data
Ensure that cert->signature_key is populated correctly
djm [Wed, 12 Sep 2018 01:34:02 +0000 (01:34 +0000)]
add SSH_ALLOWED_CA_SIGALGS - the default list of signature algorithms
that are allowed for CA signatures. Notably excludes ssh-dsa.
ok markus@
djm [Wed, 12 Sep 2018 01:32:54 +0000 (01:32 +0000)]
add sshkey_check_cert_sigtype() that checks a cert->signature_type
against a supplied whitelist; ok markus
djm [Wed, 12 Sep 2018 01:31:30 +0000 (01:31 +0000)]
add cert->signature_type field and keep it in sync with certificate
signature wrt loading and certification operations; ok markus@
djm [Wed, 12 Sep 2018 01:30:10 +0000 (01:30 +0000)]
Add "ssh -Q sig" to allow listing supported signature algorithms
ok markus@
djm [Wed, 12 Sep 2018 01:23:48 +0000 (01:23 +0000)]
test revocation by explicit hash and by fingerprint
djm [Wed, 12 Sep 2018 01:22:43 +0000 (01:22 +0000)]
s/sshkey_demote/sshkey_from_private/g
djm [Wed, 12 Sep 2018 01:21:34 +0000 (01:21 +0000)]
allow key revocation by SHA256 hash and allow ssh-keygen to create KRLs
using SHA256/base64 key fingerprints; ok markus@
djm [Wed, 12 Sep 2018 01:19:12 +0000 (01:19 +0000)]
log certificate fingerprint in authentication success/failure message
(previously we logged only key ID and CA key fingerprint).
ok markus@
bluhm [Tue, 11 Sep 2018 21:04:03 +0000 (21:04 +0000)]
Convert inetctlerrmap to u_char like inet6ctlerrmap. That is also
what FreeBSD does. Remove old #if 0 version of inet6ctlerrmap.
OK mpi@
kettenis [Tue, 11 Sep 2018 20:25:58 +0000 (20:25 +0000)]
Only look for acpi tables if acpi(4) attached. Fixes radeondrm(4) crash
on arm64 when using a device tree.
sthen [Tue, 11 Sep 2018 19:43:15 +0000 (19:43 +0000)]
sync (libc++/libc++abi update)
phessler [Tue, 11 Sep 2018 19:25:54 +0000 (19:25 +0000)]
ues the format string for signed ints, for signed ints
reminded by stsp@
robert [Tue, 11 Sep 2018 18:36:58 +0000 (18:36 +0000)]
define _LIBCXXABI_BUILDING_LIBRARY to avoid the same issues as in libcxx
robert [Tue, 11 Sep 2018 18:32:56 +0000 (18:32 +0000)]
add -Wall to CFLAGS
robert [Tue, 11 Sep 2018 18:31:58 +0000 (18:31 +0000)]
instead of defining _LIBCPP_DEBUG in debug.cpp which enables some debug
code which breaks quiet a few things, define _LIBCPP_BUILDING_LIBRARY
for the complete build to get the needed definitions in debug.cpp without
enabling debug code
robert [Tue, 11 Sep 2018 18:29:53 +0000 (18:29 +0000)]
merge libc++ 6.0.0 (bump lib major); ok patrick@, kettenis@
robert [Tue, 11 Sep 2018 18:18:58 +0000 (18:18 +0000)]
import of libc++ 6.0.0
krw [Tue, 11 Sep 2018 18:16:26 +0000 (18:16 +0000)]
Nuke unused LIST() ieee80211com_head.
ok stsp@
robert [Tue, 11 Sep 2018 18:12:06 +0000 (18:12 +0000)]
merge libc++abi 6.0.0 and bump lib minor; ok patrick@, kettenis@
robert [Tue, 11 Sep 2018 18:06:31 +0000 (18:06 +0000)]
import of libc++abi 6.0.0
robert [Tue, 11 Sep 2018 18:03:05 +0000 (18:03 +0000)]
merge libunwind 6.0.0; ok patrick@, kettenis@
robert [Tue, 11 Sep 2018 17:41:23 +0000 (17:41 +0000)]
import of libunwind 6.0.0
nicm [Tue, 11 Sep 2018 17:31:01 +0000 (17:31 +0000)]
The cursor position is limited to the margins for CUF and CUB, so turn
margins off for printing cells (like most everything else already
does). Problem reported by Thomas Sattler.
guenther [Tue, 11 Sep 2018 15:52:00 +0000 (15:52 +0000)]
Put clang-specific options behind conditionals to reduce meta-warnings
ok mpi@
bluhm [Tue, 11 Sep 2018 14:34:49 +0000 (14:34 +0000)]
Make the distribution of in_ and in6_ functions in in_pcb.c and
in6_pcb.c consistent, to ease comparing the code. Move all inet6
functions to in6_. Bring functions in both source files in same
order. Cleanup the include section. Now in_pcb.c is a superset
of in6_pcb.c. The latter contains all the special implementations.
Just moving arround, no code change intended.
OK mpi@
ccardenas [Tue, 11 Sep 2018 13:54:28 +0000 (13:54 +0000)]
Include bnxt in arm64.
Tested on mcbin with Broadcom BCM57404 (Dell variant).
Ok jmatthew@ and kettenis@
ccardenas [Tue, 11 Sep 2018 13:45:29 +0000 (13:45 +0000)]
Be consistent in logging messages.
Change "fmt" to "format".
Ok kn@
kettenis [Tue, 11 Sep 2018 12:41:30 +0000 (12:41 +0000)]
We actually support 39-bit VA's in userland.
ok patrick@, jsg@
kn [Tue, 11 Sep 2018 10:42:10 +0000 (10:42 +0000)]
Fix netmask regression in get_dynnode()
I introduced this error with r1.330 while removing the af parameter from
unmask().
`pass inet from (lo0)/24' would result in `pass inet from (lo0)', sorry.
krw [Tue, 11 Sep 2018 10:23:40 +0000 (10:23 +0000)]
Nuke some trailing spaces that wandered into the
crosshairs.
phessler [Tue, 11 Sep 2018 10:21:29 +0000 (10:21 +0000)]
With the interface debug flag enabled, print a "score" for each AP we
consider during auto-join. This can help users determine why a specific
network was chosen.
OK stsp@
espie [Tue, 11 Sep 2018 09:43:08 +0000 (09:43 +0000)]
add the conflict info to what's stored in pkglocatedb, as it's meta-info
that's not readily available otherwise.
kettenis [Tue, 11 Sep 2018 09:25:56 +0000 (09:25 +0000)]
Fix --exclude-libs option. Based on code already committed upstream.
tested by naddy@
krw [Tue, 11 Sep 2018 09:13:19 +0000 (09:13 +0000)]
Tighten validation tests on an obscure corner case of
trying to align partitions to size <= 0 or past the
end of the disk. Emit error message in this case as
in other align errors.
Looks good to otto@.
kn [Tue, 11 Sep 2018 09:02:27 +0000 (09:02 +0000)]
Remove unused buffer from host()
Left-over from pre-host_ip() times. While here, use __func__.
OK henning benno
benno [Tue, 11 Sep 2018 08:55:49 +0000 (08:55 +0000)]
add files for test 4
sashan [Tue, 11 Sep 2018 07:53:38 +0000 (07:53 +0000)]
- moving state look up outside of PF_LOCK()
this change adds a pf_state_lock rw-lock, which protects consistency
of state table in PF. The code delivered in this change is guarded
by 'WITH_PF_LOCK', which is still undefined. People, who are willing
to experiment and want to run it must do two things:
- compile kernel with -DWITH_PF_LOCK
- bump NET_TASKQ from 1 to ... sky is the limit,
(just select some sensible value for number of tasks your
system is able to handle)
OK bluhm@
jsg [Tue, 11 Sep 2018 07:13:23 +0000 (07:13 +0000)]
Add defines for amd microcode msrs which appear to be present since k8
though amd only provides public redistributable updates for >= family 10h.
nicm [Tue, 11 Sep 2018 06:37:54 +0000 (06:37 +0000)]
Do not check for mouse events on pane borders when zoomed, based on a
fix from Avi Halachmi.
ccardenas [Tue, 11 Sep 2018 04:06:32 +0000 (04:06 +0000)]
Fail fast when we are unable to determine disk format.
While here, minor cleanup on logging.
ccardenas [Tue, 11 Sep 2018 04:03:16 +0000 (04:03 +0000)]
Add ability to create qcow2 disk.
vmctl create now takes an optional disk format parameter: raw or qcow2.
If format is omitted, raw is used.
Many thanks to Ori Bernstein.
bluhm [Mon, 10 Sep 2018 22:21:39 +0000 (22:21 +0000)]
Remove useless INPCBHASH() macros. Just expand them.
OK stsp@
kn [Mon, 10 Sep 2018 20:53:53 +0000 (20:53 +0000)]
Merge host_v{4,6}() into simpler host_ip()
Except for networks such as "10/8" host_ip() now handles addresses in an
AF-agnostic way with more duplicate code removed/merged.
OK sashan (as for earlier copy_satopfaddr() diff) henning
benno [Mon, 10 Sep 2018 20:51:59 +0000 (20:51 +0000)]
check orlonger option of trie_match()
anton [Mon, 10 Sep 2018 19:22:53 +0000 (19:22 +0000)]
logmsg(LOG_ERR) -> logerr(); ok tedu@
gerhard [Mon, 10 Sep 2018 17:00:45 +0000 (17:00 +0000)]
Prevent a panic in umb(4) when roaming is diabled.
Found by beck@, tested and ok by bluhm@
sashan [Mon, 10 Sep 2018 16:18:34 +0000 (16:18 +0000)]
- if_cloners list populated at boot time only then becomes immutable,
so we can let go if_cloners_lock.
OK tb@, claudio@, bluhm@, kn@, henning@
kn [Mon, 10 Sep 2018 16:17:48 +0000 (16:17 +0000)]
Introduce copy_satopfaddr()
Move the same dance around v4/v6 for copying IP addresses from sockaddr
into pf_addr to avoid duplicate code and improve readability.
Feedback and OK bluhm
bluhm [Mon, 10 Sep 2018 16:14:07 +0000 (16:14 +0000)]
Instead of calculating the mbuf packet header length here and there,
put the algorithm into a new function m_calchdrlen(). Also set an
uninitialized m_len to 0 in NFS code.
OK claudio@
henning [Mon, 10 Sep 2018 16:07:20 +0000 (16:07 +0000)]
if_setrdomain could potentially call if_clone_create recursively in the create
rdomain case leading to locking issues and lots of headscratching. turns out
the only case where if_setrdomain could actually create an rdomain and thus
end up with that pattern is the ioctl path.
make if_setrdomain never create an rdomain, return error if it doesn't exist
already, introduce if_createrdomain, and adjust the ioctl path to use it.
ok sashan bluhm claudio
henning [Mon, 10 Sep 2018 15:54:28 +0000 (15:54 +0000)]
in pf_syncookie_validate, return early if we don't have syncookies in
flight that can possibly match. there is a tiny but existing chance that
a sequence number matches w/ our hash and we'd end up dropping traffic.
unclear whether that has actually happened since the report chain is long :)
report via haesbert via bluhm; ok bluhm
benno [Mon, 10 Sep 2018 14:29:19 +0000 (14:29 +0000)]
test all variations of network statements
benno [Mon, 10 Sep 2018 14:20:25 +0000 (14:20 +0000)]
add a test for network statements with prefix-sets
jmc [Mon, 10 Sep 2018 13:52:37 +0000 (13:52 +0000)]
tweak previous;
akoshibe [Mon, 10 Sep 2018 13:21:39 +0000 (13:21 +0000)]
Mirror bluhm's fixes for proc.c daemons to dup /dev/null for child processes
in switchd(8).
OK henning@ bluhm@
denis [Mon, 10 Sep 2018 13:15:50 +0000 (13:15 +0000)]
fix typos
OK claudio@
bluhm [Mon, 10 Sep 2018 13:00:58 +0000 (13:00 +0000)]
Send many small fragments that exceed the pf reassembly queue limit.
bluhm [Mon, 10 Sep 2018 12:47:02 +0000 (12:47 +0000)]
During fragment reassembly, mbuf chains with packet headers were
created. Add a new function m_removehdr() do convert packet header
mbufs within the chain to regular mbufs. Assert that the mbuf at
the beginning of the chain has a packet header.
found by Maxime Villard in NetBSD; from markus@; OK claudio@
jmc [Mon, 10 Sep 2018 12:42:17 +0000 (12:42 +0000)]
tweak the table commands somewhat; ok gilles
bluhm [Mon, 10 Sep 2018 11:37:26 +0000 (11:37 +0000)]
Limit the fragment entry queue length to 64 per bucket. So we have
a global limit of 1024 fragments, but it is fine grained to the
region of the packet. Smaller packets may have less fragments.
This costs another 16 bytes of memory per reassembly and devides
the worst case for searching by 8.
requestd by claudio@; OK sashan@ claudio@
benno [Mon, 10 Sep 2018 11:09:25 +0000 (11:09 +0000)]
use filterset_move() like all other network statements. It checks for
source == NULL, avoiding a possible crash introduced yesterday.
ok claudio@
phessler [Mon, 10 Sep 2018 11:07:43 +0000 (11:07 +0000)]
do not immediately set the join'd network, the join command only updates
the list.
makes /etc/netstart very fast when ran while the interface is up
OK stsp@
benno [Mon, 10 Sep 2018 11:02:35 +0000 (11:02 +0000)]
update regression tests after previous commit. ok claudio@
benno [Mon, 10 Sep 2018 11:01:15 +0000 (11:01 +0000)]
remove some empty lines from printconf output. ok claudio@
bluhm [Mon, 10 Sep 2018 10:39:26 +0000 (10:39 +0000)]
vmd(8) clould close file descriptor 0 as not all fd fields were
properly initialized with -1. Also avoid closing -1.
OK mlarkin@
bluhm [Mon, 10 Sep 2018 10:36:01 +0000 (10:36 +0000)]
During the fork+exec implementation, daemon(3) was moved after
proc_init(). As a consequence vmd(8) child processes did not detach
from the terminal anymore. Dup /dev/null to the stdio file descriptors
in the children.
OK mlarkin@ reyk@
phessler [Mon, 10 Sep 2018 10:11:18 +0000 (10:11 +0000)]
fix typo in the length of the essid we want to switch to
found with and OK stsp@
phessler [Mon, 10 Sep 2018 09:13:53 +0000 (09:13 +0000)]
extract clearing WEP/WPA in ess into helper functions
claudio [Mon, 10 Sep 2018 09:10:36 +0000 (09:10 +0000)]
Adjust the config to -current bgpd which makes it a lot more readable.
OK phessler@
phessler [Mon, 10 Sep 2018 08:27:13 +0000 (08:27 +0000)]
use the correct essid when switching during the ioctl path
pointed out by stsp@
phessler [Mon, 10 Sep 2018 08:26:39 +0000 (08:26 +0000)]
give set_ess a len variable, so we can correctly match the essid we want
to switch to.
pointed out by stsp@
nicm [Mon, 10 Sep 2018 06:48:01 +0000 (06:48 +0000)]
Do not clear selection when searching.
yasuoka [Mon, 10 Sep 2018 06:40:06 +0000 (06:40 +0000)]
Fix previous commit. It mistakenly included a change for debug.
jmatthew [Mon, 10 Sep 2018 04:59:32 +0000 (04:59 +0000)]
put the port into autonegotiate mode on attach, since that's the default
media setting.
tested by and ok ccardenas@
jmatthew [Mon, 10 Sep 2018 04:56:13 +0000 (04:56 +0000)]
if the adapter can't determine the phy type on a port, pretend it's baseCR
so we get a usable list of media types to pick from.
tested by and ok ccardenas@
jmatthew [Mon, 10 Sep 2018 04:52:23 +0000 (04:52 +0000)]
bit rates over 2G won't fit in an int, so use uint64_ts instead
guenther [Sun, 9 Sep 2018 22:46:54 +0000 (22:46 +0000)]
pmap_activate() should match cpu_switchto, so set up ci_{kern,user}_cr3
if activating for the current thread and meltdown mitigations are in effect.
Not clear if it's actually possible to hit the case where this matters,
but it's the Right Thing.
ok mlarkin@
guenther [Sun, 9 Sep 2018 22:41:57 +0000 (22:41 +0000)]
Simplify pmap_is_curpmap(): %cr3 can never match pm_pdirpa_intel here
as this code isn't present in those page tables
ok mlarkin@
guenther [Sun, 9 Sep 2018 22:09:36 +0000 (22:09 +0000)]
Calculate automatically the padding necessary for lining up the
iretq instruction used when Meltdown mitigation is effect. It got
pushed off when an lfence was added in locore.S rev 1.107, resulting
in two signals being sent instead of one when iretq faulted, and
neither signal had the correct sigcontext info. Update the makefile
rule for locore.o to verify that things are correct.
ok mlarkin@
guenther [Sun, 9 Sep 2018 21:59:43 +0000 (21:59 +0000)]
Teach binutils how to assemble INVPCID and how to disassemble
INV{EPT,VPID,PCID}
ok mlarkin@
sthen [Sun, 9 Sep 2018 21:32:59 +0000 (21:32 +0000)]
merge in some missed bits from 1.7.0 to simplify update prep.
sthen [Sun, 9 Sep 2018 21:30:24 +0000 (21:30 +0000)]
merge in some missed bits from 1.7.0 to simplify update prep.
(I think we actually had slightly beyond 1.7.0, I've left code bits but
there are some SSL->TLS changes which go away with this and will come back
with the update).
bluhm [Sun, 9 Sep 2018 21:06:51 +0000 (21:06 +0000)]
During the fork+exec implementation, daemon(3) was moved after
proc_init(). As a consequence httpd(8) and relayd(8) child processes
did not detach from the terminal anymore. Dup /dev/null to the
stdio file descriptors in the children.
OK benno@
claudio [Sun, 9 Sep 2018 20:41:01 +0000 (20:41 +0000)]
Enable the empty as-set and prefix-set tests since that is now allowed again
claudio [Sun, 9 Sep 2018 20:39:09 +0000 (20:39 +0000)]
Allow for empty as-set and prefix-set definitions by adding explicit rules
for those because shift/reduce issues in the list with optional commas.
OK benno@
phessler [Sun, 9 Sep 2018 20:32:55 +0000 (20:32 +0000)]
convert the things we save in 'join' into a single ioctl. mixing related
settings over multiple calls was risky and racy. Pass essid, wpa, and wep
paramaters in a single ioctl and process it atomically.
no change for 'nwid' users
OK stsp@ benno@
jmc [Sun, 9 Sep 2018 17:11:26 +0000 (17:11 +0000)]
missing Xc;
mortimer [Sun, 9 Sep 2018 16:41:43 +0000 (16:41 +0000)]
Apply retguard to the last asm functions in the arm64 kernel. This completes
retguard in the kernel and brings the number of useful ROP gadgets at
runtime to zero.
ok kettenis@
claudio [Sun, 9 Sep 2018 15:04:36 +0000 (15:04 +0000)]
Shut up a gcc warning about uninitialized use of min & max by adding a default
case in the switch statement. Found by denis@ and fix proposed by sthen@
benno [Sun, 9 Sep 2018 15:02:26 +0000 (15:02 +0000)]
use rib_valid() to check if a rib is useable. ok claudio@
claudio [Sun, 9 Sep 2018 14:28:50 +0000 (14:28 +0000)]
Comment the empty as-set and prefix-set tests. This is not yet working.
Add a single asnum test, just to make sure that works as well
claudio [Sun, 9 Sep 2018 14:27:24 +0000 (14:27 +0000)]
Can not allow empty as-set and prefix-set blocks right now. This produces
shit/reduce confilcts which need to be resolved first.
akoshibe [Sun, 9 Sep 2018 14:21:32 +0000 (14:21 +0000)]
Make switchd(8) ignore PACKET_INs generated from looped traffic. Currently,
it responds to these messages with an invalid PACKET_OUT onto OFP*_PORT_ANY,
resulting in the switch responding with an error, causing switchd to
disconnect the switch.
OK phessler@ claudio@
benno [Sun, 9 Sep 2018 14:08:11 +0000 (14:08 +0000)]
use TAILQ_CONCAT in filterset_move(). ok claudio@
millert [Sun, 9 Sep 2018 13:53:11 +0000 (13:53 +0000)]
Fix a crash in rdistd triggered by the recent getpw{ent,nam,uid}
changes. This stems from rdist stashing a pointer to the static
area used by getpw{ent,nam,uid} and using it to avoid repeating
passwd lookups when pw->pw_name matches the user to be looked up.
This relied on undefined behavior, and with the recent passwd
changes, is no longer possible as the old pointer will be invalidated.
A better approach is to use the upcoming uid_from_user(3) functions.
Found by and fix OK tim@