openbsd
6 years agoUse AF_UNSPEC not 0
kn [Wed, 11 Jul 2018 15:25:42 +0000 (15:25 +0000)]
Use AF_UNSPEC not 0

6 years agoSome spaces have been removed from pfctl print. Adapt expected
bluhm [Wed, 11 Jul 2018 14:57:58 +0000 (14:57 +0000)]
Some spaces have been removed from pfctl print.  Adapt expected
output in regress.

6 years agoretire the old cron socket path; ok jca millert
deraadt [Wed, 11 Jul 2018 14:51:01 +0000 (14:51 +0000)]
retire the old cron socket path; ok jca millert

6 years agoDetect vmm(4) in the bootloader and automatically switch to the serial
mlarkin [Wed, 11 Jul 2018 14:48:40 +0000 (14:48 +0000)]
Detect vmm(4) in the bootloader and automatically switch to the serial
console at 115200 baud.

tested by phessler and myself, ok deraadt

6 years agoRegress update to match changes for chrome
beck [Wed, 11 Jul 2018 14:35:37 +0000 (14:35 +0000)]
Regress update to match changes for chrome

6 years agoFix comment about VLAN encapsulation and checksum offload
sf [Wed, 11 Jul 2018 14:20:18 +0000 (14:20 +0000)]
Fix comment about VLAN encapsulation and checksum offload

Document that some chips actually could do hardware checksum offload for
encapsulated packets, though that would need special handling in those
drivers.

discussions and ok naddy@

6 years agoadd option "network ... priority number" to announce prefixes from the
benno [Wed, 11 Jul 2018 14:08:46 +0000 (14:08 +0000)]
add option "network ... priority number" to announce prefixes from the
kernel routing table selected by priority.
For example to import all ospfd/ospf6d routes into bgp.
tested by remi@
ok remi@ henning@ and maybe a little claudio@

6 years agoDetect when a router advertisement packet changes due to config
florian [Wed, 11 Jul 2018 14:03:13 +0000 (14:03 +0000)]
Detect when a router advertisement packet changes due to config
change and if it does send a new advertisement.

The way this is implemented gives us various things for free:
- periodic sending of router advertisements
- send initial advertisement for every interface on startup

6 years agono longer needed
florian [Wed, 11 Jul 2018 14:01:44 +0000 (14:01 +0000)]
no longer needed

6 years agoSync comment
kn [Wed, 11 Jul 2018 13:57:53 +0000 (13:57 +0000)]
Sync comment

Makes it a tad easier to read through and compare with BN_swap_ct().

OK tb

6 years agoAdd -w option to vmctl stop to wait for completion of VM termination.
reyk [Wed, 11 Jul 2018 13:19:47 +0000 (13:19 +0000)]
Add -w option to vmctl stop to wait for completion of VM termination.

Use it in /etc/rc.d/vmd accordingly.

OK sthen@

6 years agovmm(4): return proper cache topology for cpuid(0x4)
mlarkin [Wed, 11 Jul 2018 13:19:42 +0000 (13:19 +0000)]
vmm(4): return proper cache topology for cpuid(0x4)

Make the cache neighbor fields match the number of VCPUs present
(currently 1)

ok reyk

6 years agoRetire RTM_LOSING, it no longer makes sense and on busy servers the
claudio [Wed, 11 Jul 2018 13:08:00 +0000 (13:08 +0000)]
Retire RTM_LOSING, it no longer makes sense and on busy servers the
route socket is flooded with those messages. Instead maek sure that the
removal of the dynamic route that can happen is actually also sent to
the routing socket.
OK mpi@ henning@

6 years agortm_send() the cloned routes because of ICMP mtu changes. Until now
claudio [Wed, 11 Jul 2018 13:06:16 +0000 (13:06 +0000)]
rtm_send() the cloned routes because of ICMP mtu changes. Until now
these changes to the routing table have not been visible whereas the
RTM_DELETE of those routes have been. Remove this inconsistency.
Input and OK mpi@
OK henning@

6 years agovmm(4): respect argument size when reading from undefined ports.
mlarkin [Wed, 11 Jul 2018 12:55:01 +0000 (12:55 +0000)]
vmm(4): respect argument size when reading from undefined ports.

6 years agovmm(4): small cleanup in vm_rwregs.
mlarkin [Wed, 11 Jul 2018 12:45:01 +0000 (12:45 +0000)]
vmm(4): small cleanup in vm_rwregs.

Clarify error values and change a panic into a debug printf (which will
in turn just kill the VM).

6 years agoDrop a const-bomb on regexec. It's probably not a good idea to remove a
martijn [Wed, 11 Jul 2018 12:38:46 +0000 (12:38 +0000)]
Drop a const-bomb on regexec. It's probably not a good idea to remove a
const promise when processing it in the regex engine.

Minor tweak and OK schwarze@

6 years agoWhen in incremental search handle ^M (a.k.a. <cr>) like ^[ (a.k.a.
krw [Wed, 11 Jul 2018 12:21:37 +0000 (12:21 +0000)]
When in incremental search handle ^M (a.k.a. <cr>) like ^[ (a.k.a.
<esc>). i.e. exit incremental search and set the mark. This is what
emacs does.

pointers, suggestions and ok florian@

6 years agoChange the control socket to ospfd.sock.<rdomain>.
remi [Wed, 11 Jul 2018 12:09:34 +0000 (12:09 +0000)]
Change the control socket to ospfd.sock.<rdomain>.

ok friehm@ jca@

6 years agoAfter opening all the needed files, tighten the pledge(2)
schwarze [Wed, 11 Jul 2018 11:42:17 +0000 (11:42 +0000)]
After opening all the needed files, tighten the pledge(2)
from "stdio rpath" to just "stdio", before parsing any user data.
It may not matter that much just yet, but parsing will become
slightly more complicated soon when i shall add UTF-8 handling.
OK millert@

6 years agothe STATE_LOOKUP macro made sense ages ago. It stopped making sense
henning [Wed, 11 Jul 2018 11:39:31 +0000 (11:39 +0000)]
the STATE_LOOKUP macro made sense ages ago. It stopped making sense
when we moved most of the functionality into a function. g/c the macro
and just call the function. ok mpi jca

6 years agoRepair the regression introduced by the recent refactoring
schwarze [Wed, 11 Jul 2018 11:35:06 +0000 (11:35 +0000)]
Repair the regression introduced by the recent refactoring
revision 1.11 date: 2004/07/03 21:00:37;
for -p/-P, the argument was no longer parsed, causing segfaults.
OK millert@

6 years agoRename function to vmd_check_vmh
reyk [Wed, 11 Jul 2018 10:31:45 +0000 (10:31 +0000)]
Rename function to vmd_check_vmh

6 years agoremove wrong comment
remi [Wed, 11 Jul 2018 10:23:47 +0000 (10:23 +0000)]
remove wrong comment

ok jca@ tb@

6 years agoallow default from state
espie [Wed, 11 Jul 2018 09:57:59 +0000 (09:57 +0000)]
allow default from state

6 years agoallow state->new to deduce the command name from $0
espie [Wed, 11 Jul 2018 09:54:49 +0000 (09:54 +0000)]
allow state->new to deduce the command name from $0

6 years agoAdd -f option to vmctl stop to forcefully kill a VM.
reyk [Wed, 11 Jul 2018 09:35:44 +0000 (09:35 +0000)]
Add -f option to vmctl stop to forcefully kill a VM.

This also fixes a bug in vmm_sighdlr where it might have missed
forwarding the TERMINATE_EVENT to the vmd parent after a VM child
died, leading to an abandoned VM in the vmd parent process.

OK ccardenas@ mlarkin@ benno@ kn@

6 years agoin if_addgroup(), call the new pfi_group_addmember() instead of
henning [Wed, 11 Jul 2018 09:08:21 +0000 (09:08 +0000)]
in if_addgroup(), call the new pfi_group_addmember() instead of
pf_group_change() - the latter is called by _addmemeber now to update dynaddr.
before this, "set skip on lo", ifconfig lo1 create -> no skip on lo1 until
pf rueset got reloaded. Now lo1 gets the skip flag as intended. This has
caused much confusion with i. e. gif interfaces in the past.
ok benno, very excited ok phessler

6 years agoConvert AH & IPcomp to ipsec_input_cb() and count drops on input.
mpi [Wed, 11 Jul 2018 09:07:59 +0000 (09:07 +0000)]
Convert AH & IPcomp to ipsec_input_cb() and count drops on input.

ok markus@

6 years agoprovide pfi_group_addmember(), which makes the new member interface inherit
henning [Wed, 11 Jul 2018 09:05:51 +0000 (09:05 +0000)]
provide pfi_group_addmember(), which makes the new member interface inherit
set flags from the group. ok phessler benno

6 years agothere is nothing secret about rad.conf
florian [Wed, 11 Jul 2018 08:47:03 +0000 (08:47 +0000)]
there is nothing secret about rad.conf

6 years agoDocument behavior change of EC_POINTs_mul(3) from EC constant time changes.
tb [Wed, 11 Jul 2018 08:42:38 +0000 (08:42 +0000)]
Document behavior change of EC_POINTs_mul(3) from EC constant time changes.

ok beck on earlier version, markup help from Schwarze.

6 years agoDon't hide errors when IPv6 forwarding is not enabled.
florian [Wed, 11 Jul 2018 08:31:48 +0000 (08:31 +0000)]
Don't hide errors when IPv6 forwarding is not enabled.
OK(failed) phessler
OK deraadt

6 years agoExpand formats in load-buffer and save-buffer.
nicm [Wed, 11 Jul 2018 08:29:21 +0000 (08:29 +0000)]
Expand formats in load-buffer and save-buffer.

6 years agos/wuth/with/ in comment
martijn [Wed, 11 Jul 2018 08:19:35 +0000 (08:19 +0000)]
s/wuth/with/ in comment

6 years agosync
deraadt [Wed, 11 Jul 2018 07:59:16 +0000 (07:59 +0000)]
sync

6 years agoDo for most running out of memory err() what was done for most running
krw [Wed, 11 Jul 2018 07:39:22 +0000 (07:39 +0000)]
Do for most running out of memory err() what was done for most running
out of memory log_warn(). i.e. ("%s", __func__) instead of manual
function names and redundant verbiage about which wrapper detected the
out of memory condition.

ok henning@

6 years agoTurn yesterday's optimistic ! in an XXX comment into a more cautious ?
tb [Wed, 11 Jul 2018 07:38:00 +0000 (07:38 +0000)]
Turn yesterday's optimistic ! in an XXX comment into a more cautious ?

6 years agoUsing resolved after realpath(3) has failed is dangerous. Don't do it!
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@

6 years agoMake the output of the list command more sensible for the output device.
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@

6 years agoHelper function to shorten history.
nicm [Wed, 11 Jul 2018 06:51:39 +0000 (06:51 +0000)]
Helper function to shorten history.

6 years agoimplement media type detection and forcing of link speed, lightly tested
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.

6 years agoRephrase the wording on the replacement string of the substitute command.
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@

6 years agoAdd function comments.
nicm [Wed, 11 Jul 2018 06:43:45 +0000 (06:43 +0000)]
Add function comments.

6 years agomove declarations of hwrm message functions up to the top and make them
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.

6 years agodon't bother checking the rx index matches what we expect, it works
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.

6 years agoRemove an old and false comment. REALLOC now free(3)s the code if realloc
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@

6 years agozap trailing whitespace;
jmc [Wed, 11 Jul 2018 06:16:50 +0000 (06:16 +0000)]
zap trailing whitespace;

6 years agoUpdate EC regression tests.
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

6 years agoremove newd control leftovers
florian [Tue, 10 Jul 2018 22:14:19 +0000 (22:14 +0000)]
remove newd control leftovers

6 years agoremove unused variable; pointed out by llvm
florian [Tue, 10 Jul 2018 22:13:16 +0000 (22:13 +0000)]
remove unused variable; pointed out by llvm

6 years agoadd ractl, the rad(8) control program
florian [Tue, 10 Jul 2018 22:12:43 +0000 (22:12 +0000)]
add ractl, the rad(8) control program

6 years agoIndent labels by a space so they don't obliterate function names in diffs.
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.

6 years agoECC constant time scalar multiplication support. First step in overhauling
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

6 years agoProvide BN_swap_ct(), a constant time function that conditionally swaps
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

6 years agoFactor out a bit of ugly code that truncates the digest to the order_bits
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

6 years agopledge(2)
friehm [Tue, 10 Jul 2018 21:21:56 +0000 (21:21 +0000)]
pledge(2)

Looks great! deraadt@
OK florian
OK remi@

6 years agostyle (single-line ifs don't need braces)
reyk [Tue, 10 Jul 2018 21:12:20 +0000 (21:12 +0000)]
style (single-line ifs don't need braces)

6 years ago$OpenBSD$
tb [Tue, 10 Jul 2018 20:55:57 +0000 (20:55 +0000)]
$OpenBSD$

6 years agoNow that all *_free() functions are NULL safe, we can generate the
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.

6 years agoReturn the VM pid to the vmd parent. This pid field already existed
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.

6 years agoRemove a debug message
reyk [Tue, 10 Jul 2018 20:46:50 +0000 (20:46 +0000)]
Remove a debug message

6 years agoWhen an interface doesn't have a layer 2 address in6_get_soii_ifid()
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

6 years agoWhen an interface doesn't have a layer 2 address in6_get_ifid()
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

6 years agovmd already had DEBUG/DPRINTF, there is no need for VMD_DEBUG/dprintf
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).

6 years agoRemove raw_usrreq and raw_cb, nothing is using them anymore.
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@

6 years agoRemove net/raw_cb.h from includes and replace the RAWSNDQ, RAWRCVQ with
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@

6 years agomachine/fpu.h is not needed on amd64 and does not exist on i386.
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.

6 years agowe were refering to 10k states by default here as well, pt out by claudio
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

6 years agowhere we were showing "set limit states 10000" make that 100k as well,
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)

6 years agoFix a few, but not all, clang warnings: Use "%s" to print modifiable
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

6 years agoMake legacy interrupts work in acpipci(4).
kettenis [Tue, 10 Jul 2018 17:11:42 +0000 (17:11 +0000)]
Make legacy interrupts work in acpipci(4).

ok patrick@

6 years ago+addsub
tb [Tue, 10 Jul 2018 16:58:15 +0000 (16:58 +0000)]
+addsub

6 years agoAdd simple regression tests for BN_{,u}{add,sub}(3). With input from jca
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

6 years agoThe year is 2018.
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

6 years ago"%%s: s" -> "%s: %s" in log_warn()
krw [Tue, 10 Jul 2018 16:42:12 +0000 (16:42 +0000)]
"%%s: s" -> "%s: %s" in log_warn()

6 years agoImport rad(8).
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@

6 years agoTweak debug log messages
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@

6 years agocheck-problems -> pkg_check-problems;
jmc [Tue, 10 Jul 2018 16:01:48 +0000 (16:01 +0000)]
check-problems -> pkg_check-problems;

6 years agoIn asm.h ensure NENTRY uses the old-school nop-sled align, but change standard
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

6 years agorde_update_get_prefix() and friends should also verify the prefixlen.
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@

6 years agoTweak comments and explain some not so obvious things.
rpe [Tue, 10 Jul 2018 14:22:36 +0000 (14:22 +0000)]
Tweak comments and explain some not so obvious things.

6 years agoError out if -netmask/-prefixlen does not follow the destination parameter
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

6 years agosync
deraadt [Tue, 10 Jul 2018 13:09:29 +0000 (13:09 +0000)]
sync

6 years agoAlways use PSCI to enable secondary CPUs if it is detected.
kettenis [Tue, 10 Jul 2018 13:06:55 +0000 (13:06 +0000)]
Always use PSCI to enable secondary CPUs if it is detected.

6 years ago__func__ log statements and some whitespace knf
benno [Tue, 10 Jul 2018 13:06:28 +0000 (13:06 +0000)]
__func__ log statements and some whitespace knf
ok^H^HHmpf, whatever claudio@

6 years agoAdd a "machine acpi" command to force booting with ACPI enabled.
kettenis [Tue, 10 Jul 2018 13:05:37 +0000 (13:05 +0000)]
Add a "machine acpi" command to force booting with ACPI enabled.

6 years agoInitialize the rtable in the requests send to bgpd to the current
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@

6 years agomove the top level pledge, getrtable() works with pledge stdio.
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@

6 years agoin pf_set_protostate(), only decrement the half-open states counter when
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

6 years agoYou can run multiple copies of bgpd in seperate rdomains.
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@

6 years agothe check "if (nc->rtableid)"
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@

6 years agoIf intra area prefixes move from one router to another router, cloning routes
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@

6 years agoSince we use multiple cloning routes (mpath) if more than one ip address
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@

6 years agoIntroduce new IPsec (per-CPU) statistics and refactor ESP input
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@

6 years agoRemove DELAY(1000) from carp_send_arp() / carp_send_na() since it is not clear
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@

6 years agosync
deraadt [Tue, 10 Jul 2018 11:00:11 +0000 (11:00 +0000)]
sync

6 years agoLet kroute_matchgw() select the correct route before checking flags.
friehm [Tue, 10 Jul 2018 10:55:21 +0000 (10:55 +0000)]
Let kroute_matchgw() select the correct route before checking flags.

OK claudio@

6 years agounify option parsing a bit more
espie [Tue, 10 Jul 2018 10:37:59 +0000 (10:37 +0000)]
unify option parsing a bit more

6 years agozap old comments that are unlikely to ever come back
espie [Tue, 10 Jul 2018 10:37:33 +0000 (10:37 +0000)]
zap old comments that are unlikely to ever come back