delete pledge_sysctl() printing of the failing mibs, because it truncates
it's buffer, produces misleading output, and is pointless tty output,
Like with other system calls failuress, the standard pledge_fail() tty output
should lead the user to use ktrace which will provide an accurate view.
from deraadt@; discussed with bluhm
this is errata/7.7/022_pledge_sysctl.patch.sig
delete pledge_sysctl() printing of the failing mibs, because it truncates
it's buffer, produces misleading output, and is pointless tty output,
Like with other system calls failuress, the standard pledge_fail() tty output
should lead the user to use ktrace which will provide an accurate view.
from deraadt@; discussed with bluhm
this is errata/7.8/016_pledge_sysctl.patch.sig
replace pledge "stdio rpath tmppath" with unveil "/tmp" "rwc" to satisfy
mktemp(3) type operations, unveil "/" "r" for reading all over the tree,
and pledge "stdio rpath wpath cpath" to permit both unveils subject to
their own limitations.
pledge "rpath tmppath" is replace with unveil "/" "r", unveil "/tmp" "rwc",
and "rpath wpath cpath"
from deraadt@; ok semarie
This was using pledge "tmppath" with "rpath wpath cpath".
The "tmppath" is not needed.
from deraadt@; ok semarie and others
uses tmpfile(), which is why it used "tmppath", which is why it now
needs "rpath wpath cpath"
from deraadt@; spotted by brynet
Instead of pledge "tmppath rpath", setup a "rwc" unveil on "/tmp", a
"r" unveil on "/", and then pledge "rpath wpath cpath".
[28 lines not shown]
replace pledge "stdio rpath tmppath" with unveil "/tmp" "rwc" to satisfy
mktemp(3) type operations, unveil "/" "r" for reading all over the tree,
and pledge "stdio rpath wpath cpath" to permit both unveils subject to
their own limitations.
pledge "rpath tmppath" is replace with unveil "/" "r", unveil "/tmp" "rwc",
and "rpath wpath cpath"
from deraadt@; ok semarie
This was using pledge "tmppath" with "rpath wpath cpath".
The "tmppath" is not needed.
from deraadt@; ok semarie and others
uses tmpfile(), which is why it used "tmppath", which is why it now
needs "rpath wpath cpath"
from deraadt@; spotted by brynet
Instead of pledge "tmppath rpath", setup a "rwc" unveil on "/tmp", a
"r" unveil on "/", and then pledge "rpath wpath cpath".
[28 lines not shown]
Reserve the first MB of the DVA address space because qwx(4) doesn't
succeed in doing DMA when the DVA is 0x1000 and PCI-PCI bridges may not
forward address in part of that first MB as well.
ok chris@
Error out on presence of Content-Length and Transfer-Encoding headers
for GET, HEAD and other methods that should have no body.
Ignoring the Content-Length header makes httpd vulnerable to
HTTP request smuggling. A crafted GET request may embed an extra
HTTP request which could bypass a proxy or WAF but then is handled
by httpd.
Remove the special case for TRACE and CONNECT in the Content-Length
handling. Move those checks into the method switch at the end of the
header parsing phase and by that also cover more methods including
GET and HEAD. If either header is present simply abort the connection,
nobody should send extra data along GET and HEAD requests.
Add an an explicit HTTP_METHOD_TRACE case above the default case
to indicated that we deliberately don't handle TRACE requests.
This security vulnerability was found by Nicola Staller of SySS GmbH.
With and OK rsadowski@ previous version also OK florian@
enable forced resolvers that aren't in a preference block
allows a config such as:
preference { autoconf }
forwarder { 127.0.0.1 port 5300 }
force forwarder { local }
also fix a typo while i'm here
ok florian
regress/mmap: Test hints in VM-area edge cases
Test mmap(2) with hint above VM_MAXUSER_ADDRESS without MAP_FIXED.
This tests uvm_map.c,v 1.355.
Also test the lower boundary below PAGE_SIZE.
ok kettenis@
pledge "tmppath" goes away because it sucks. The history is kind of
sad: unveil(2) was invented by Bob Beck and myself because a couple
of us struggled and couldn't expand the "tmppath" mechanism to general use.
unveil(2) ended up being kind of "upside down" different, and so we never
deleted "tmppath" because the refactorings seemed complicated.
However over the last two weeks, we're removed all the "tmppath" in base
pretty easily, and the 18 ports using it have also been fixed.
The majority of situations now use unveil "/tmp" "rwc", unveil "/" "r" or
similar, and then pledge "rpath wpath cpath", and this is generally needed
to satisfy the mkstemp(3) family of functions in libc.
Use of "tmppath" will now cause pledge(2) to return EINVAL. There is
no backwards compatible way of mimic the behaviour correctly using
kernel-internal unveil hackery.
Prompted by a report from David Leadbeater; and extensive conversations
with beck and semarie.
Update various lifetimes.
This raises the router, dns and nat64 lifetimes from 30 minutes to 60
minutes and lowers the prefix valid lifetime from 90 minutes to 60
minutes.
This brings us in line with the values of draft-ietf-6man-slaac-renum
which is going to be published soon.
Aligning all these lifetimes to a single value (60 minutes) makes
sense because the information is transmitted in one router
advertisement packet. It does not make sense for one piece of
information to time out before another.
OK phessler
Call igmp_sendpkt() and mld6_sendpkt() with pktinfo argument.
Gather all information needed to send an IGMP or MLD6 packet in a
struct pktinfo. This allows splitting access to multicast data
structures from sending packets. Then adding locks to multicast
will be easier.
OK mvs@
Add support for scan command version 17 to iwx(4).
This will be needed to support BZ wifi-6e devices in the future.
Tested:
AX200: jmc, stsp
AX210: kettenis (MA device)
AX211: sthen (SO device), phessler
AX211: stsp (BZ device)
Pass paste buffer through vis(3) when pasting to prevent buffers
containing for example the bracket end sequence causing issues. -S flag
disables. Reported by Mason Davis.
rename a few functions and defines
also reformat some comments with ludicrously short lines. No functional
changes, except the usage of `eval' instead of `expr' in two error message,
since that's the actual macro name (expr is merely an alias for eval)
diff from espie, typo from sthen
ok sthen