martijn [Wed, 11 Jul 2018 07:03:03 +0000 (07:03 +0000)]
Using resolved after realpath(3) has failed is dangerous. Don't do it!
Minor tweak and OK jca@
OK beck@ deraadt@
martijn [Wed, 11 Jul 2018 06:57:18 +0000 (06:57 +0000)]
Make the output of the list command more sensible for the output device.
We now output $COLUMNS - 8 characters of the string and a newline.
This is similar to the behaviour in ed(1).
Discussed with and OK schwarze@
nicm [Wed, 11 Jul 2018 06:51:39 +0000 (06:51 +0000)]
Helper function to shorten history.
jmatthew [Wed, 11 Jul 2018 06:48:58 +0000 (06:48 +0000)]
implement media type detection and forcing of link speed, lightly tested
with a variety of 10g optics.
martijn [Wed, 11 Jul 2018 06:47:38 +0000 (06:47 +0000)]
Rephrase the wording on the replacement string of the substitute command.
Cover more cases with less wording.
Joint work with schwarze@
OK millert@
nicm [Wed, 11 Jul 2018 06:43:45 +0000 (06:43 +0000)]
Add function comments.
jmatthew [Wed, 11 Jul 2018 06:43:30 +0000 (06:43 +0000)]
move declarations of hwrm message functions up to the top and make them
non-static.
jmatthew [Wed, 11 Jul 2018 06:39:57 +0000 (06:39 +0000)]
don't bother checking the rx index matches what we expect, it works
properly.
martijn [Wed, 11 Jul 2018 06:39:23 +0000 (06:39 +0000)]
Remove an old and false comment. REALLOC now free(3)s the code if realloc
fails.
OK millert@
jmc [Wed, 11 Jul 2018 06:16:50 +0000 (06:16 +0000)]
zap trailing whitespace;
tb [Wed, 11 Jul 2018 06:16:40 +0000 (06:16 +0000)]
Update EC regression tests.
Part of https://github.com/libressl-portable/openbsd/pull/94
from Billy Brumley and his team.
ok jsing
florian [Tue, 10 Jul 2018 22:14:19 +0000 (22:14 +0000)]
remove newd control leftovers
florian [Tue, 10 Jul 2018 22:13:16 +0000 (22:13 +0000)]
remove unused variable; pointed out by llvm
florian [Tue, 10 Jul 2018 22:12:43 +0000 (22:12 +0000)]
add ractl, the rad(8) control program
tb [Tue, 10 Jul 2018 22:06:14 +0000 (22:06 +0000)]
Indent labels by a space so they don't obliterate function names in diffs.
tb [Tue, 10 Jul 2018 21:55:49 +0000 (21:55 +0000)]
ECC constant time scalar multiplication support. First step in overhauling
the EC module.
From Billy Brumley and his team, via
https://github.com/libressl-portable/openbsd/pull/94
With tweaks from jsing and me.
ok jsing
tb [Tue, 10 Jul 2018 21:52:07 +0000 (21:52 +0000)]
Provide BN_swap_ct(), a constant time function that conditionally swaps
two bignums. It's saner and substantially less ugly than the existing
public BN_constantime_swap() function and will be used in forthcoming work
on constant time ECC code.
From Billy Brumley and his team. Thanks!
ok jsing
tb [Tue, 10 Jul 2018 21:36:02 +0000 (21:36 +0000)]
Factor out a bit of ugly code that truncates the digest to the order_bits
leftmost bits of a longer digest, according to FIPS 183-6, 6.4. Eliminate
a microoptimization that only converts the relevant part of the digest to
a bignum.
ok beck, jsing
friehm [Tue, 10 Jul 2018 21:21:56 +0000 (21:21 +0000)]
pledge(2)
Looks great! deraadt@
OK florian
OK remi@
reyk [Tue, 10 Jul 2018 21:12:20 +0000 (21:12 +0000)]
style (single-line ifs don't need braces)
tb [Tue, 10 Jul 2018 20:55:57 +0000 (20:55 +0000)]
$OpenBSD$
tb [Tue, 10 Jul 2018 20:53:30 +0000 (20:53 +0000)]
Now that all *_free() functions are NULL safe, we can generate the
freenull test from Symbols.list.
Suggested by jsing, discussed with beck and bluhm.
reyk [Tue, 10 Jul 2018 20:52:51 +0000 (20:52 +0000)]
Return the VM pid to the vmd parent. This pid field already existed
in the result but wasn't filled in by the vmm process. No functional
change.
reyk [Tue, 10 Jul 2018 20:46:50 +0000 (20:46 +0000)]
Remove a debug message
florian [Tue, 10 Jul 2018 20:44:39 +0000 (20:44 +0000)]
When an interface doesn't have a layer 2 address in6_get_soii_ifid()
failes and then later on a in in6_get_ifid() a layer 2 address is
"borrowed" from from another interface.
Do the "borrowing" in in6_get_soii_ifid(), too so that semantically
opaque interface identifiers work for these kind of interfaces, too.
OK phessler, benno
florian [Tue, 10 Jul 2018 20:43:26 +0000 (20:43 +0000)]
When an interface doesn't have a layer 2 address in6_get_ifid()
tries to "borrow" one from another interface.
But then it checks if the U bit is set int the generated EUI64
address and rejects it.
On the other hand for interfaces that do have a layer 2 address this
check is skipped, so relax it for the "borrowing" case, too.
With this one gets stable link local addresses on e.g. gre(4)
interfaces on certain virtualisation environments depending which mac
addresses get picked for the vio(4) interfaces while previously we
would end up with a random IP on every reboot.
Reported by Aaron A. Glenn via phessler.
OK phessler, benno
reyk [Tue, 10 Jul 2018 20:43:15 +0000 (20:43 +0000)]
vmd already had DEBUG/DPRINTF, there is no need for VMD_DEBUG/dprintf
Replace all occurences of dprintf with DPRINTF (defined in proc.h).
claudio [Tue, 10 Jul 2018 20:30:31 +0000 (20:30 +0000)]
Remove raw_usrreq and raw_cb, nothing is using them anymore.
OK mpi@
claudio [Tue, 10 Jul 2018 20:28:34 +0000 (20:28 +0000)]
Remove net/raw_cb.h from includes and replace the RAWSNDQ, RAWRCVQ with
protocol specific ones.
OK mpi@
bluhm [Tue, 10 Jul 2018 20:21:53 +0000 (20:21 +0000)]
machine/fpu.h is not needed on amd64 and does not exist on i386.
Remove the include.
henning [Tue, 10 Jul 2018 19:28:35 +0000 (19:28 +0000)]
we were refering to 10k states by default here as well, pt out by claudio
henning [Tue, 10 Jul 2018 19:27:11 +0000 (19:27 +0000)]
where we were showing "set limit states 10000" make that 100k as well,
and adjust adaptive.start/end as well (just like in the code)
tb [Tue, 10 Jul 2018 17:45:52 +0000 (17:45 +0000)]
Fix a few, but not all, clang warnings: Use "%s" to print modifiable
strings, add a couple of braces, ansify a few functions, add and remove
a few extra parens.
ok jcs
kettenis [Tue, 10 Jul 2018 17:11:42 +0000 (17:11 +0000)]
Make legacy interrupts work in acpipci(4).
ok patrick@
tb [Tue, 10 Jul 2018 16:58:15 +0000 (16:58 +0000)]
+addsub
tb [Tue, 10 Jul 2018 16:57:50 +0000 (16:57 +0000)]
Add simple regression tests for BN_{,u}{add,sub}(3). With input from jca
henning [Tue, 10 Jul 2018 16:48:22 +0000 (16:48 +0000)]
The year is 2018.
Mercury, Bowie, Cash, Motorola and DEC all left us.
Just pf still has a default state table limit of 10000.
Had! Now it's a tiny little bit more, 100k.
lead guitar: me
ok chorus: phessler theo claudio benno
background school girl laughing: bob
krw [Tue, 10 Jul 2018 16:42:12 +0000 (16:42 +0000)]
"%%s: s" -> "%s: %s" in log_warn()
florian [Tue, 10 Jul 2018 16:39:54 +0000 (16:39 +0000)]
Import rad(8).
It's a Router Advertisement Daemon written using the standard 3
process privsep pattern and a parse.y based config file.
Commit early to continue work in tree.
OK jca
"it's totally rad" phessler@
"usr.sbin never runs out of space" deraadt@
reyk [Tue, 10 Jul 2018 16:15:51 +0000 (16:15 +0000)]
Tweak debug log messages
- Turn tracing messages into DPRINTF (only compiled with DEBUG).
- Pass __func__ to vm_stop and vm_remove: this way we can track who
called the function in the async context. It replaces the manual
log_debug in front of each vm_stop/vm_remove. This debug logging
trick can be removed in the future once we are more confident about
it.
OK ccardenas@ mlarkin@
jmc [Tue, 10 Jul 2018 16:01:48 +0000 (16:01 +0000)]
check-problems -> pkg_check-problems;
deraadt [Tue, 10 Jul 2018 16:01:26 +0000 (16:01 +0000)]
In asm.h ensure NENTRY uses the old-school nop-sled align, but change standard
ENTRY is a trapsled. Fix a few functions which fall-through into an ENTRY
macro. amd64 binaries now are free of double+-nop sequences (except for one
assember nit in aes-586.pl). Previous changes by guenther got us here.
ok mortimer kettenis
claudio [Tue, 10 Jul 2018 15:13:35 +0000 (15:13 +0000)]
rde_update_get_prefix() and friends should also verify the prefixlen.
This way the check can be removed from rde_update_dispatch() which is
just a duplicate of the general failure case of rde_update_get_prefix().
OK benno@ phessler@
rpe [Tue, 10 Jul 2018 14:22:36 +0000 (14:22 +0000)]
Tweak comments and explain some not so obvious things.
kn [Tue, 10 Jul 2018 13:11:38 +0000 (13:11 +0000)]
Error out if -netmask/-prefixlen does not follow the destination parameter
Since the address string comes last, `-prefixlen 56 2001:db8::' silently
installs a route for /64 since that's the currently implied prefix length.
The manual page already states that these options must follow the
destination parameter in order to have any effect.
Discussed at length with many
OK benno sthen bluhm jca
deraadt [Tue, 10 Jul 2018 13:09:29 +0000 (13:09 +0000)]
sync
kettenis [Tue, 10 Jul 2018 13:06:55 +0000 (13:06 +0000)]
Always use PSCI to enable secondary CPUs if it is detected.
benno [Tue, 10 Jul 2018 13:06:28 +0000 (13:06 +0000)]
__func__ log statements and some whitespace knf
ok^H^HHmpf, whatever claudio@
kettenis [Tue, 10 Jul 2018 13:05:37 +0000 (13:05 +0000)]
Add a "machine acpi" command to force booting with ACPI enabled.
benno [Tue, 10 Jul 2018 13:03:06 +0000 (13:03 +0000)]
Initialize the rtable in the requests send to bgpd to the current
rtables process. With this you dont need to add "table N" to commands
when talking to a bgpd not in rdomain 0.
ok claudio@ phessler@
benno [Tue, 10 Jul 2018 13:02:14 +0000 (13:02 +0000)]
move the top level pledge, getrtable() works with pledge stdio.
ok claudio@ phessler@
henning [Tue, 10 Jul 2018 13:01:38 +0000 (13:01 +0000)]
in pf_set_protostate(), only decrement the half-open states counter when
the state was created on this host, i. e. not for those pfsync-imported.
whether pfsync-imported states should be accounted is a seperate discussion,
but as things are, we only increment the counter in pf_create_state(), and
imported states don't excercise that path.
probably fixes the half-open states accounting underflow-wraparounds that
some people have been seeing.
ok sashan
benno [Tue, 10 Jul 2018 12:40:41 +0000 (12:40 +0000)]
You can run multiple copies of bgpd in seperate rdomains.
However, the processes will see each others route messages. Some
structures are not initialized correctly for that, causing at least
useless log messages.
This is an attempt to use the default_tableid where its needed.
A few hardcoded uses of rtable 0 remain.
ok claudio@
benno [Tue, 10 Jul 2018 12:38:50 +0000 (12:38 +0000)]
the check "if (nc->rtableid)"
is used as an indicator that we are dealing with network statements from within
rdomain <n> { } blocks.
That needs to check against the rdomain we are running in instead.
ok claudio@
friehm [Tue, 10 Jul 2018 12:17:38 +0000 (12:17 +0000)]
If intra area prefixes move from one router to another router, cloning routes
may become gateway routes and contrary. The kernel does not allow to change the
flags RTF_GATEWAY / RTF_CLONING in RTM_CHANGE messages, but ospf6d tried this
anyway. The result is a broken route.
Instead of modifying such routes remove the old route and insert a new one.
Thanks to Raimund Specht for reporting the problem and testing the fix.
OK claudio@
friehm [Tue, 10 Jul 2018 11:49:04 +0000 (11:49 +0000)]
Since we use multiple cloning routes (mpath) if more than one ip address
exists in the same network, the routes are distinguished by their gateway
address, which is the associated interface address.
The ospfd has to track the gateway addresses so that kroute_matchgw() is able to
find the correct routes.
OK claudio@
mpi [Tue, 10 Jul 2018 11:34:12 +0000 (11:34 +0000)]
Introduce new IPsec (per-CPU) statistics and refactor ESP input
callbacks to be able to count dropped packet.
Having more generic statistics will help troubleshooting problems
with specific tunnels. Per-TDB counters are coming once all the
refactoring bits are in.
ok markus@
friehm [Tue, 10 Jul 2018 11:22:54 +0000 (11:22 +0000)]
Remove DELAY(1000) from carp_send_arp() / carp_send_na() since it is not clear
why it was necessary.
OK bluhm@
'ok but watch for fallouts' mpi@
deraadt [Tue, 10 Jul 2018 11:00:11 +0000 (11:00 +0000)]
sync
friehm [Tue, 10 Jul 2018 10:55:21 +0000 (10:55 +0000)]
Let kroute_matchgw() select the correct route before checking flags.
OK claudio@
espie [Tue, 10 Jul 2018 10:37:59 +0000 (10:37 +0000)]
unify option parsing a bit more
espie [Tue, 10 Jul 2018 10:37:33 +0000 (10:37 +0000)]
zap old comments that are unlikely to ever come back
espie [Tue, 10 Jul 2018 10:20:51 +0000 (10:20 +0000)]
zap really old stuff
espie [Tue, 10 Jul 2018 10:18:34 +0000 (10:18 +0000)]
remove remnants of very old code, to simplify unification
bluhm [Tue, 10 Jul 2018 10:17:42 +0000 (10:17 +0000)]
In free(9) call wakeup() after mtx_leave() consistently.
OK kettenis@ visa@ mpi@
bluhm [Tue, 10 Jul 2018 10:02:14 +0000 (10:02 +0000)]
After removing raw_usrreq() from route and pfkey, the global sockaddr
variables can be delared constant.
OK claudio@ mpi@
benno [Tue, 10 Jul 2018 09:55:14 +0000 (09:55 +0000)]
dont let rtable number overflow,
we only support up to RT_TABLEID_MAX rtables
ok henning@, claudio@, phessler@
jasper [Tue, 10 Jul 2018 09:46:18 +0000 (09:46 +0000)]
s/ITUNER/MICROCHIP/ following usbdevs -r1.689
jasper [Tue, 10 Jul 2018 09:45:33 +0000 (09:45 +0000)]
regen
jasper [Tue, 10 Jul 2018 09:44:01 +0000 (09:44 +0000)]
replace the Ituner vendor with Microchip to match Linux at least
ok mpi@
sf [Tue, 10 Jul 2018 09:36:58 +0000 (09:36 +0000)]
re-remove some pre-auth compression bits
This time, make sure to not remove things that are necessary for
pre-auth compression on the client. Add a comment that pre-auth
compression is still supported in the client.
ok markus@
mpi [Tue, 10 Jul 2018 09:35:27 +0000 (09:35 +0000)]
Include <sys/queue.h> instead of relying on kernel headers to include
it.
ok markus@ as part of a larger diff
halex [Tue, 10 Jul 2018 09:33:34 +0000 (09:33 +0000)]
simplify and properly quote the loading of soii key generation material,
and move it into enable_network()
ok florian tb, long ago
henning [Tue, 10 Jul 2018 09:31:07 +0000 (09:31 +0000)]
document set delay
henning [Tue, 10 Jul 2018 09:30:49 +0000 (09:30 +0000)]
'set delay' for the generic packet delay mechanism, ok benno sashan
henning [Tue, 10 Jul 2018 09:30:13 +0000 (09:30 +0000)]
if_enqueue: call pf_delay_pkt() if m_pkthdr.pf.delay is set
ok benno sashan
henning [Tue, 10 Jul 2018 09:28:27 +0000 (09:28 +0000)]
provide a generic packet delay functionality. packets to be delayed are marked
by pf in the packet header. pf_delay_pkt reads the delay value from the packet
header, schedules a timeout and re-queues the packet when the timeout fires.
ok benno sashan
mpi [Tue, 10 Jul 2018 09:18:36 +0000 (09:18 +0000)]
Print USB port status/changes in verbose++ mode.
While here align the driver name with the new output.
mpi [Tue, 10 Jul 2018 09:17:03 +0000 (09:17 +0000)]
Change USB_DEVICEINFO to report USB port status/changes as currently
seen by the stack.
This will allows us to debug port status changes without relying on
external tools, like lsusb(1), that generate I/O.
While here correct USB3 LS port defines.
djm [Tue, 10 Jul 2018 09:13:30 +0000 (09:13 +0000)]
kerberos/gssapi fixes for buffer removal
claudio [Tue, 10 Jul 2018 09:12:52 +0000 (09:12 +0000)]
Switch also the aspath in rde_update_dispatch() to one on the stack.
Simplifies the code a bit.
OK denis@ phessler@
schwarze [Tue, 10 Jul 2018 09:10:03 +0000 (09:10 +0000)]
Disentangle the "SED ADDRESSES", "SED REGULAR EXPRESSIONS",
and "s/// command" sections and clarify what an escaped delimiter
does inside regular expressions and inside character classes.
Joint work with martijn@, no objection from jmc@.
espie [Tue, 10 Jul 2018 09:05:47 +0000 (09:05 +0000)]
rename some pkg checking tools
jca [Tue, 10 Jul 2018 09:05:11 +0000 (09:05 +0000)]
Add "listenrepv2" for MLDv2 Listener Reports from RFC3810
ok benno@
mlarkin [Tue, 10 Jul 2018 09:04:22 +0000 (09:04 +0000)]
vmm(4): remove a wrong comment
mpi [Tue, 10 Jul 2018 08:58:50 +0000 (08:58 +0000)]
Move socket & pipe specific logic in their ioctl handler.
ok visa@, tb@
guenther [Tue, 10 Jul 2018 08:57:44 +0000 (08:57 +0000)]
Drop the ignored selectors (tf_[defg]s) from the trap and interrupt frames.
ok mlarkin@ deraadt@ mpi@ kettenis@
kn [Tue, 10 Jul 2018 08:44:55 +0000 (08:44 +0000)]
fix anchor rules with filter opts, introduce filteropts_to_rule()
Some filter options were parsed but not set on anchor rules due to missing
copies of the respective struct members:
$ cat pf.conf
queue rq on trunk0 bandwidth 1G
queue dq parent rq bandwidth 1G default
anchor a set queue dq
$ pfctl -vnf pf.conf | fgrep queue
anchor "a" all
Fix this by moving common code from `anchorrule' and `pfrule' into a new
helper filteropts_to_rule().
Input from henning and benno
OK henning sashan jca
mlarkin [Tue, 10 Jul 2018 08:40:20 +0000 (08:40 +0000)]
vmd(8): route ELCR handler to the right function
mpi [Tue, 10 Jul 2018 08:08:00 +0000 (08:08 +0000)]
Missing CVS Id
benno [Tue, 10 Jul 2018 08:00:09 +0000 (08:00 +0000)]
compare the right things here: we want to know if the flag has changed.
Found with claudios help and patience.
ok phessler@ claudio@
benno [Tue, 10 Jul 2018 07:58:13 +0000 (07:58 +0000)]
Actually clear the right thing in rib_free()
Found by and with claudio.
ok phessler@ claudio@
djm [Tue, 10 Jul 2018 06:45:29 +0000 (06:45 +0000)]
buffer.[ch] and bufaux.c are no more
djm [Tue, 10 Jul 2018 06:43:52 +0000 (06:43 +0000)]
one mention of Buffer that almost got away :)
guenther [Tue, 10 Jul 2018 04:19:59 +0000 (04:19 +0000)]
Move from sendsig() to its callers the initsiginfo() calls and
instead of passing sendsig() the code+type+val, pass a siginfo_t*
to copy from. Eliminate the indirection through struct emul for
sendsig(); we no longer have a SunOS4-compat version of sendsig()
ok deraadt@
jsg [Tue, 10 Jul 2018 03:23:11 +0000 (03:23 +0000)]
Xr pci(4)
jsg [Tue, 10 Jul 2018 03:19:18 +0000 (03:19 +0000)]
sync arm64 and armv7 pci
jsg [Tue, 10 Jul 2018 03:07:15 +0000 (03:07 +0000)]
build pcidump on armv7
dlg [Tue, 10 Jul 2018 00:38:52 +0000 (00:38 +0000)]
move the verbose checksum info back after the colon.
requested by bluhm@ as it broke some regress tests for no good
reason.
mlarkin [Mon, 9 Jul 2018 22:07:14 +0000 (22:07 +0000)]
vmm(4): prohibit setting/clearing invalid bits in %cr0/%cr4. This was
previously caught later but resulted in a guest termination, now we
use #GP as the SDM recommends.