eric [Thu, 27 Dec 2018 08:57:03 +0000 (08:57 +0000)]
change the close() method to take the table pointer
ok gilles
eric [Thu, 27 Dec 2018 08:08:06 +0000 (08:08 +0000)]
Make the backend open method return an int to report success.
The implementation is responsible for setting the handle pointer
as needed.
ok gilles@
djm [Thu, 27 Dec 2018 03:37:49 +0000 (03:37 +0000)]
ssh_packet_set_state() now frees ssh->kex implicitly, so don't
do explicit kex_free() beforehand
djm [Thu, 27 Dec 2018 03:25:24 +0000 (03:25 +0000)]
move client/server SSH-* banners to buffers under ssh->kex and factor
out the banner exchange. This eliminates some common code from the
client and server.
Also be more strict about handling \r characters - these should only
be accepted immediately before \n (pointed out by Jann Horn).
Inspired by a patch from Markus Schmidt.
(lots of) feedback and ok markus@
eric [Wed, 26 Dec 2018 20:13:43 +0000 (20:13 +0000)]
reorder parameters for consistency
denis [Wed, 26 Dec 2018 18:32:38 +0000 (18:32 +0000)]
uncouple AF_MPLS and AF_INET
input and OK mpi@
eric [Wed, 26 Dec 2018 17:37:15 +0000 (17:37 +0000)]
simplify code
ok gilles@
anton [Wed, 26 Dec 2018 16:14:59 +0000 (16:14 +0000)]
document kern.pool_debug; ok tedu@
eric [Wed, 26 Dec 2018 15:55:09 +0000 (15:55 +0000)]
introduce a table_match() function to check for a key in a table
ok gilles@
tb [Wed, 26 Dec 2018 15:11:04 +0000 (15:11 +0000)]
Make AES CCM available in tables.
Omission reported by reyk and Alice Wonder.
ok bcook jsing
sthen [Wed, 26 Dec 2018 14:49:45 +0000 (14:49 +0000)]
sync
eric [Wed, 26 Dec 2018 14:15:12 +0000 (14:15 +0000)]
get rid of the unused dict argument in table lookup and fetch api.
ok gilles@
denis [Wed, 26 Dec 2018 13:24:28 +0000 (13:24 +0000)]
unbreak VPN routes installation into FIB
OK claudio@
eric [Wed, 26 Dec 2018 11:53:02 +0000 (11:53 +0000)]
move the table backend name in the backend struct.
remove unused function.
ok gilles@
fcambus [Wed, 26 Dec 2018 11:33:57 +0000 (11:33 +0000)]
Remove the rasops24_erasecols and rasops24_eraserows functions from
rasops(9).
We only build rasops24 functions on amd64 (for EFI support in QEMU) and
on armv7 and arm64, and we can safely use the generic functions on those
platforms, like we do for all other color depths. No other platform uses
rasops24, Miod explains why here [1].
No performance regression observed when testing with QEMU in EFI mode.
[1] https://marc.info/?l=openbsd-ppc&m=
118664346819989&w=2
OK kettenis@
gilles [Wed, 26 Dec 2018 11:29:13 +0000 (11:29 +0000)]
when passing message to filters, do not worry yet about handling DATA
errors as this requires more work and is caught on stream back anyways
bru [Wed, 26 Dec 2018 11:08:02 +0000 (11:08 +0000)]
Use estimates of speed to improve gesture detection.
ok mpi@ (to the concept)
phessler [Wed, 26 Dec 2018 07:01:22 +0000 (07:01 +0000)]
revert "kill a region if 'delete' or 'backspace' is pressed"
This caused a change of behaviour in the search case, and isn't yet ready.
Committing on the behalf of lum@
OK lum@
anton [Tue, 25 Dec 2018 22:57:58 +0000 (22:57 +0000)]
test dying kcov descriptor logic
anton [Tue, 25 Dec 2018 21:56:53 +0000 (21:56 +0000)]
In the kcov ioctl(KIOSETBUFSIZE) path, malloc() can sleep. Double check that
someone else didn't win the race.
ok mpi@
denis [Tue, 25 Dec 2018 19:28:25 +0000 (19:28 +0000)]
rework icmp6_error() to be closer to icmp_error()
input & OK mpi@
krw [Tue, 25 Dec 2018 17:05:56 +0000 (17:05 +0000)]
No need for magic tick_msg(NULL,..) call to
set stop time. The stop time is always
config->link_timeout seconds after the
first call to tick_msg().
claudio [Tue, 25 Dec 2018 09:25:04 +0000 (09:25 +0000)]
Remove unused static function since clang errors out because of this.
OK visa@, mpi@, guenther@
claudio [Tue, 25 Dec 2018 09:20:49 +0000 (09:20 +0000)]
Use the same additional arch specific files for sparc64 as is done for mips
or aarch64. Needed to build userland with clang.
OK visa@ kettenis@
schwarze [Tue, 25 Dec 2018 00:05:38 +0000 (00:05 +0000)]
bugfix: make the static class buffer long enough
for .Bl -bullet -compact -offset indent
krw [Mon, 24 Dec 2018 23:28:20 +0000 (23:28 +0000)]
Always use log_getverbose() instead of sometimes checking OPT_VERBOSE
flag.
tedu [Mon, 24 Dec 2018 20:42:03 +0000 (20:42 +0000)]
mandoc.css lives in /usr/share/misc now; use full paths to indicate this.
ok schwarze
schwarze [Mon, 24 Dec 2018 19:59:17 +0000 (19:59 +0000)]
install /usr/share/misc/mandoc.css
users of -T html normally need this file,
so the source tree should not be the only place to get it
pointed out by millert@, OK millert@ deraadt@ tedu@
krw [Mon, 24 Dec 2018 18:36:24 +0000 (18:36 +0000)]
tick_msg() needs to note that it has called go_daemon(), since
dhclient could have been started with '-d'. Which means go_daemon()
may not actually daemonize. Which means isatty(STDERR_FILENO) may
always return 1. Which means "... sleeping" messages would be
emitted forever. e.g. running with '-d' and never successfully
obtaining a lease.
schwarze [Mon, 24 Dec 2018 10:07:22 +0000 (10:07 +0000)]
Make this page much more readable by deleting as much text as possible
about functions that are deprecated, identical to other functions, and
never made sense in the first place.
As deraadt@ points out, we should not hide the information that
matters in a heap of clutter. It would waste reader's time and
make confusion and accidental misuse more likely.
OK deraadt@ jmc@
jsg [Mon, 24 Dec 2018 08:45:57 +0000 (08:45 +0000)]
Adjust cpsw for linux 4.20 device tree changes. The location of the phy
is now found via phy-handle instead of phy_id.
patrick [Sun, 23 Dec 2018 22:48:19 +0000 (22:48 +0000)]
Add support for generating a REPEATED START on operations where we first
write the register address and then read the register data in one go.
ok kettenis@
schwarze [Sun, 23 Dec 2018 22:03:17 +0000 (22:03 +0000)]
Finally, stop abusing .Ss and .Sx to mark up macros, use .Ic instead
since these are clearly commands in a domain-specific language. As
a nice side effect, the resulting list allows including the synopsis
for each macro in the item head, reducing some repetitive verbiage.
schwarze [Sun, 23 Dec 2018 16:55:01 +0000 (16:55 +0000)]
Simplify and clarify instructions for .Ql, and deprecate .Li.
The macros .Ql, .Dl, and .Bd -literal leave no room for any
valid use case for .Li whatsoever.
General direction discussed with jmc@.
eric [Sun, 23 Dec 2018 16:37:53 +0000 (16:37 +0000)]
remove dead code
ok gilles@
gilles [Sun, 23 Dec 2018 16:06:24 +0000 (16:06 +0000)]
the tree_* and dict_* api's in smtpd can be used standalone, do not have
them depend on smtpd.h, it makes it hard to reuse them elsewhere
ok eric@
eric [Sun, 23 Dec 2018 15:53:24 +0000 (15:53 +0000)]
Simplify the table backend interface: lookup results are returned
as strings, and parsing is handled by the upper layer.
ok gilles@
gilles [Sun, 23 Dec 2018 15:49:04 +0000 (15:49 +0000)]
when a filter chain is only used once, no need to create a named chain, it
can now be inlined on listen lines: listen on all filter { foo1, foo2 }
gilles [Sun, 23 Dec 2018 15:48:16 +0000 (15:48 +0000)]
when passing mail-from parameter to filters, pass the '<' '>' free version
schwarze [Sun, 23 Dec 2018 15:32:10 +0000 (15:32 +0000)]
Deprecate .Lp, use .Pp instead.
Simplicity matters, and fewer macros is simpler.
OK jmc@
gilles [Sun, 23 Dec 2018 15:14:49 +0000 (15:14 +0000)]
simplify builtins
gilles [Sun, 23 Dec 2018 14:26:02 +0000 (14:26 +0000)]
revive filters tracing (-T filters) to make it easier understand what is
happening at filters level
natano [Sun, 23 Dec 2018 11:23:21 +0000 (11:23 +0000)]
Add regress suite for the noperm mfs mount flag. Protection of the root vnode
should be effective now. Let's make sure it stays that way.
natano [Sun, 23 Dec 2018 10:46:51 +0000 (10:46 +0000)]
Rectify some issues with the noperm mount flag; the root vnode was not
protected properly and files without any x bit set were accidentaly considered
executable when checked with access(2).
Issues found and reported by deraadt, halex, reyk, tb
ok deraadt
tb [Sun, 23 Dec 2018 08:35:14 +0000 (08:35 +0000)]
EVP_MD_CTX_cleanup() is deprecated and doesn't free, so recommend using
EVP_MD_CTX_free() instead if the goal is to avoid leaking memory.
From my corresponding upstream commit, reminded by schwarze
schwarze [Sat, 22 Dec 2018 23:19:53 +0000 (23:19 +0000)]
Document EVP_PKEY_new_mac_key(3);
from Matt Caswell <matt at openssl dot org>
via OpenSSL commit
d45a97f4 Mar 5 17:41:49 2018 +0000.
schwarze [Sat, 22 Dec 2018 19:48:46 +0000 (19:48 +0000)]
In the TOC, close <a> before opening <ul>.
Simplified version of a bugfix patch from rapha@.
deraadt [Sat, 22 Dec 2018 17:33:39 +0000 (17:33 +0000)]
sync
claudio [Sat, 22 Dec 2018 16:12:40 +0000 (16:12 +0000)]
bgpctl can cause bgpd to do a lot of work (e.g. dumping all of the RIB)
but then bgpctl can quickly exit and bgpd still has to do all the work.
Instead introduce a terminate imsg to stop such long running commands if
bgpctl closes the connection before the run is over.
OK benno@, sthen@, deraadt@
kettenis [Sat, 22 Dec 2018 14:42:29 +0000 (14:42 +0000)]
Avoid using m_trailingspace(9) on an mbuf allocated with MGET(9) as it relies
on header fields that aren't initialized, which may trigger an assertion.
Check whether the control message doesn't exceed MLEN instead and turn the
check into a KASSERT as the driver should not generate control messages
that are larger.
with help form claudio@ (who points out that the driver should not use
MT_CONTROL here).
ok patrick@
gilles [Sat, 22 Dec 2018 13:09:05 +0000 (13:09 +0000)]
introduce 'rcpt-to' builtin filter, can only be used on 'rcpt-to' hook
gilles [Sat, 22 Dec 2018 12:31:40 +0000 (12:31 +0000)]
introduce 'mail-from' builtin filter, can be applied on the 'mail-from',
'rcpt-to', 'data' and 'commit' phases.
gilles [Sat, 22 Dec 2018 12:17:16 +0000 (12:17 +0000)]
introduce 'helo' builtin filter, can be used on any hook but 'connect'
gilles [Sat, 22 Dec 2018 11:32:43 +0000 (11:32 +0000)]
remove lka_filter_response() which is no longer used, and reshuffle a bit
the functions within the file to make it easier to read
gilles [Sat, 22 Dec 2018 11:28:11 +0000 (11:28 +0000)]
simplify filter_protocol / filter_protocol_next by factoring code
while at it comment both filter_protocol_internal and filter_data_internal,
the gilles@ that will read this in six months will thank me.
gilles [Sat, 22 Dec 2018 10:39:16 +0000 (10:39 +0000)]
simplify filter_data() and filter_data_next() by factoring logic
visa [Sat, 22 Dec 2018 10:31:01 +0000 (10:31 +0000)]
Add support for R_MIPS_PC32 relocation. It is needed for linking code
that has been compiled using clang.
The added code is based on old binutils code from year 2000.
Prodded by and OK jca@, OK kettenis@ guenther@
gilles [Sat, 22 Dec 2018 10:18:56 +0000 (10:18 +0000)]
tree_xget() -> tree_get()
gilles [Sat, 22 Dec 2018 09:30:19 +0000 (09:30 +0000)]
reuse existing tokens for builtin filter names to avoid creating too many
new keywords, 'check-rdns' & 'check-src' are not better than 'rdns' & 'src'
gilles [Sat, 22 Dec 2018 08:54:02 +0000 (08:54 +0000)]
introduce new matching criteria 'from rdns' to match sessions based on rDNS
of the client, works with literal and tables, both string and regex:
match from rdns "mx1.poolp.org" for any action blahblah
gilles [Sat, 22 Dec 2018 08:18:55 +0000 (08:18 +0000)]
remove space
prompted by jmc@
schwarze [Sat, 22 Dec 2018 00:03:51 +0000 (00:03 +0000)]
Delete irrelevant HISTORY details. Simply use BN_rand(3); there
is no need to know at which time BN_pseudo_rand(3) was made the
same as BN_rand(3). Considering that question might even mislead
people to attempt ill-advised #ifdef'ing.
Pointed out by deraadt@.
schwarze [Fri, 21 Dec 2018 23:51:42 +0000 (23:51 +0000)]
The wrong header file was given for EVP_PKEY_CTX_set_signature_md(3).
Also clarify to which algorithms it applies.
From Matt Caswell <matt at openssl dot org>
via OpenSSL commit
d45a97f4 Mar 5 17:41:49 2018 +0000.
Document
EVP_PKEY_CTX_get_rsa_padding(3), EVP_PKEY_CTX_get_rsa_pss_saltlen(3),
EVP_PKEY_CTX_set_rsa_mgf1_md(3), and EVP_PKEY_CTX_get_rsa_mgf1_md(3).
From Antoine Salon <asalon at vmware dot com>
via OpenSSL commit
87103969 Oct 1 14:11:57 2018 -0700
from the OpenSSL_1_1_1-stable branch, which is still under a free license.
schwarze [Fri, 21 Dec 2018 22:13:28 +0000 (22:13 +0000)]
Document the ECDSA_SIG_new(3) return value.
Inspired by OpenSSL commit
6da34cfb Jun 2 16:17:32 2018 -0400
by Ken Goldman <kgoldman at us dot ibm dot com>,
but use the same wording as in ASN1_item_new(3) instead.
schwarze [Fri, 21 Dec 2018 21:54:48 +0000 (21:54 +0000)]
Clarify behaviour of DH_get0_pqg(3) and DH_get0_key(3) with NULL arguments;
from <Matthias dot St dot Pierre at ncp dash e dot com>
via OpenSSL commit
5777254b May 27 09:07:07 2018 +0200.
schwarze [Fri, 21 Dec 2018 21:36:21 +0000 (21:36 +0000)]
grammar and style fixes from wesinator at github
via OpenSSL commit
521738e9 Oct 5 14:58:30 2018 -0400
gilles [Fri, 21 Dec 2018 21:35:29 +0000 (21:35 +0000)]
since we already support regex lookups in tables for builtin filters, let's
also support regex lookups in match rule criterias performing table lookups
ok millert@
gilles [Fri, 21 Dec 2018 20:38:42 +0000 (20:38 +0000)]
do not tree_xget() sessions in filter_protocol_next(), filter_data_next() &
lka_proc_filter_in_session() because there are legitimate reasons a session
would no longer be around.
schwarze [Fri, 21 Dec 2018 20:09:04 +0000 (20:09 +0000)]
Since OpenBSD 6.1, BN_pseudo_rand*(3) does the same as BN_rand*(3).
Say so, and note that OpenSSL followed suit in 1.1.0 according
to OpenSSL commit
5ecff87d Jun 21 13:55:02 2017 +0100.
schwarze [Fri, 21 Dec 2018 19:30:19 +0000 (19:30 +0000)]
Mention that some functions call BN_GENCB_call(3) with a second
argument of 3; from Beat Bolli <dev at drbeat dot li>
via OpenSSL commit
bd93f1ac Jul 28 16:45:22 2018 -0400.
gilles [Fri, 21 Dec 2018 19:07:47 +0000 (19:07 +0000)]
- make the proc filter fd non-blocking
- client sessions may disappear while filter is streaming data, dont panic
gilles [Fri, 21 Dec 2018 17:31:57 +0000 (17:31 +0000)]
in lka_filter_init(), split into two passes, one to deal with filters then
another one to associate filters to chains
gilles [Fri, 21 Dec 2018 17:22:50 +0000 (17:22 +0000)]
use ss_src in src builtin filters
gilles [Fri, 21 Dec 2018 17:04:46 +0000 (17:04 +0000)]
implement some additional builtin filters:
check-src-{table,regex}, check-rdns-{table,regex}
make sure that these builtins may be used at all phases
schwarze [Fri, 21 Dec 2018 16:58:49 +0000 (16:58 +0000)]
Rename mandoc_getarg() to roff_getarg() and pass it the roff parser
struct as an argument such that after copy-in, it can call roff_expand()
once again, which used to be called roff_res() before this. This
fixes a subtle low-level roff(7) parsing bug reported by Fabio
Scotoni <fabio at esse dot ch> in the 4.4BSD-Lite2 mdoc.samples(7)
manual page, because that page used an escaped escape sequence in
a macro argument.
To expand escaped escape sequences in quoted mdoc(7) arguments, too,
stop bypassing the call to roff_getarg() in mdoc_argv.c, function args()
for this case. This does not solve the case of escaped escape sequences
in quoted .Bl -column phrases yet.
Because roff_expand() can make the string longer, roff_getarg() can no
longer operate in-place but needs to malloc(3) the returned string.
In the high-level parsers, free(3) that string after processing it.
gilles [Fri, 21 Dec 2018 14:41:41 +0000 (14:41 +0000)]
start simplifying log lines, they're no longer intended to be parseable, we
have a reporting API for tools that want to analyze events, maillog is just
for us, hoomans.
similar work will be brought to other logs in upcoming diffs
ok eric@
visa [Fri, 21 Dec 2018 14:35:56 +0000 (14:35 +0000)]
Remove outdated instruction.
gilles [Fri, 21 Dec 2018 14:33:52 +0000 (14:33 +0000)]
bring in new grammar for filters, allowing filter chains and plugging of
different filters & chains on different interfaces.
in this diff, proc filters are still disabled as they're missing on very
important piece of logic.
ok eric@
visa [Fri, 21 Dec 2018 14:33:43 +0000 (14:33 +0000)]
Document how to boot from SD/MMC or SATA on U-Boot. Also mention that
the root disk may be specified by DUID.
Initial diff by Chris McGee
espie [Fri, 21 Dec 2018 14:04:53 +0000 (14:04 +0000)]
make sure that test is not run in interactive mode, since the failing
code path changed slightly
espie [Fri, 21 Dec 2018 14:04:19 +0000 (14:04 +0000)]
do not try merging packages that are already kept, the forward dependency
check did fail
(noticed by bluhm@)
kettenis [Fri, 21 Dec 2018 12:02:55 +0000 (12:02 +0000)]
Do PAT setup earlier such that mapping the framebuffer WC works at the
point where we remap it.
ok deraadt@, mlarkin@
kn [Fri, 21 Dec 2018 11:16:04 +0000 (11:16 +0000)]
DIOCIGETIFACES provides interfaces and groups, not drivers
"driver" is a left-over from earlier implementations.
Nowadays each driver such as lo(4) has it's respective interface group of
the same name ("lo"), but additional driver-independent groups exist, too:
# ifconfig lo0 group foo
# pfctl -s I -i foo
foo
lo0
OK henning
guenther [Fri, 21 Dec 2018 05:45:42 +0000 (05:45 +0000)]
Add support for {preinit,init,fini}_array sections in static binaries
ok kettenis@
jsg [Fri, 21 Dec 2018 01:51:07 +0000 (01:51 +0000)]
remove intr_find_mpmapping proto func removed in intr.c rev 1.31 in 2011
deraadt [Fri, 21 Dec 2018 01:29:22 +0000 (01:29 +0000)]
sync
jmc [Thu, 20 Dec 2018 23:57:06 +0000 (23:57 +0000)]
tweak previous;
dlg [Thu, 20 Dec 2018 23:16:47 +0000 (23:16 +0000)]
.Nm, not Nm.
dlg [Thu, 20 Dec 2018 23:00:55 +0000 (23:00 +0000)]
add bpe(4) or Backbone Provider Edge interfaces
Backbone refers to 802.1ah or 802.1Q Provider Backbone Bridges
(PBB), or mac-in-mac, which is like vlans except it completely
encapsulates the inner packet rather than just add a shim to it.
This removes the need for Backbone Core Bridges (ie, switches between
bpe instances) to know all the addresses on all the networks.
schwarze [Thu, 20 Dec 2018 21:27:51 +0000 (21:27 +0000)]
Move the full responsibility for reporting open(2) errors from
mparse_open() to the caller. That is better because only the caller
knows its preferred reporting method and format and only the caller
has access to all the data that should be included - like the column
number in .so processing or the current manpath in makewhatis(8).
Moving the mandoc_msg() call out is possible because the caller can
call strerror(3) just as easily as mparse_open() can.
Move mandoc_msg_setinfilename() closer to the parsing of the file
contents, to avoid problems *with* the file (like non-existence,
lack of permissions, etc.) getting misreported as problems *in*
the file.
Fix the column number reported for .so failure:
let it point to the beginning of the filename.
Taken together, this prevents makewhatis(8) from spewing confusing
messages about .so failures to stderr, a bug reported by
Raf Czlonka <rczlonka at gmail dot com> on ports@.
It also prevents mandoc(1) from issuing *two* messages for every
single .so failure.
gilles [Thu, 20 Dec 2018 19:57:30 +0000 (19:57 +0000)]
the ciphers part of tls log lines doesn't need to be quoted, mta_session.c
has it right, make smtp_session.c use the same format
gilles [Thu, 20 Dec 2018 19:50:39 +0000 (19:50 +0000)]
use HOST_NAME_MAX+1 instead of MAXHOSTNAMELEN, also avoids including the
sys/param.h header
gilles [Thu, 20 Dec 2018 19:45:17 +0000 (19:45 +0000)]
use the machine hostname, not localhost, in mail.maildir.c
spotted and ok tedu@
gilles [Thu, 20 Dec 2018 19:40:13 +0000 (19:40 +0000)]
change the format of ssl_to_text() to match that of io's, this only affect
smtp and mta "tls" log lines and tls event reporting
deraadt [Thu, 20 Dec 2018 18:47:16 +0000 (18:47 +0000)]
sync
schwarze [Thu, 20 Dec 2018 18:23:18 +0000 (18:23 +0000)]
Explain what the fields in mandoc messages mean,
rather than merely specifying the message syntax.
Gap in documentation found while looking at a bug
report from Raf Czlonka <rczlonka at gmail dot com>.
gilles [Thu, 20 Dec 2018 17:57:44 +0000 (17:57 +0000)]
call smtp_check_noparam() on RSET, DATA, NOOP, QUIT, WIZ
deraadt [Thu, 20 Dec 2018 15:57:14 +0000 (15:57 +0000)]
6.2 keys no longer required
claudio [Thu, 20 Dec 2018 13:27:54 +0000 (13:27 +0000)]
Replace a wrong poor mans m_trailingspace() with the real thing. The mbuf
passed to ip_pcbopts could be a cluster and so the size check is all wrong.
found by Greg Steuck; OK bluhm@
Reported-by: syzbot+c2543ae6b6692a5843e3@syzkaller.appspotmail.com
eVS: ----------------------------------------------------------------------
claudio [Thu, 20 Dec 2018 10:28:58 +0000 (10:28 +0000)]
The timeouts in nd6 are in msec so just use timeout_add_msec() instead
of some complicated match to convert them to ticks.
OK visa@ bluhm@ kn@