jsg [Sun, 25 Jan 2015 11:38:49 +0000 (11:38 +0000)]
Correct a bit test for DDR2 CAS Latency and recognise CL7 and CL6.
While the spec only mentions bits for CL5->CL2 with the other
bits being marked 'TBD' it seems likely they are used now.
From David Vasek.
dlg [Sun, 25 Jan 2015 11:36:41 +0000 (11:36 +0000)]
refactor loading of dmamaps.
bus_dmama_load and bus_dmamap_load mbuf figure out the physical
addresses of the memory theyre given and then hand it to
_bus_dmamap_load_paddr to store in the dmamaps sg lists.
unfortunately bus_dmamap_load_mbuf assumes it is only given memory
from the kernels direct mapped region, and blindly translates
anything its given into phys addresses to hand to _load_paddr.
i recently committed change to pool asking them to allocate large
pages, which meant uvm allocated mbufs outside the direct map, which
meant bus_dmamap_load_mbuf was handing out bogus physical addresses.
the pool change got backed out until i could debug this.
now _load and _load_mbuf now call _bus_dmamap_load_vaddr for every
buffer theyve been given, which properly determines if the addresses
are in the direct map or via the tlb. _load_vaddr then feeds the
physical addresses into _bus_dmamap_load_paddr to store them in the
dmamap.
tldr; _load_mbuf doesnt make naive assumptions about its addresses
now.
ok miod@ kettenis@
kettenis [Sat, 24 Jan 2015 20:59:42 +0000 (20:59 +0000)]
Implement bus_dmamem_alloc_range(9) for macppc/socppc.
naddy [Sat, 24 Jan 2015 20:47:19 +0000 (20:47 +0000)]
correct the syntax description of the boot command; ok jmc@
millert [Sat, 24 Jan 2015 20:32:46 +0000 (20:32 +0000)]
Fix getopt string; the -N flag doesn't take an argument.
From Matthew Clarke
jmc [Sat, 24 Jan 2015 19:20:26 +0000 (19:20 +0000)]
tweak previous;
kettenis [Sat, 24 Jan 2015 16:20:37 +0000 (16:20 +0000)]
Add bus_dmamem_alloc_range(9).
kettenis [Sat, 24 Jan 2015 16:06:46 +0000 (16:06 +0000)]
Document bus_dmamem_alloc_range(9).
kettenis [Sat, 24 Jan 2015 15:15:50 +0000 (15:15 +0000)]
Use bus_dmamem_alloc_range(9) to make sure the ring descriprtors can be
accessed by the device.
ok deraadt@, stsp@
kettenis [Sat, 24 Jan 2015 15:13:55 +0000 (15:13 +0000)]
Add bus_dmamem_alloc_range(9) to allow drivers to allocate DMA'able memory
within a range that is more (or less) restrictive than the default range.
ok deraadt@, stsp@
miod [Sat, 24 Jan 2015 10:39:21 +0000 (10:39 +0000)]
Move -lz late in the linker commandline for things to build on static arches.
kettenis [Sat, 24 Jan 2015 10:35:33 +0000 (10:35 +0000)]
Add back <sys/param.h>; it's needed for MACHINE_STACK_GROWS_UP.
ok millert@, tobiasu@
schwarze [Sat, 24 Jan 2015 10:07:58 +0000 (10:07 +0000)]
preserve .PP before .RE; effect found in audio/pms(1)
doug [Sat, 24 Jan 2015 09:44:29 +0000 (09:44 +0000)]
Convert openssl(1) sess_id to the new option handling.
input + ok jsing@
doug [Sat, 24 Jan 2015 05:48:39 +0000 (05:48 +0000)]
Convert openssl(1)'s rsa.c to the new option handling code.
input + ok jsing@
schwarze [Sat, 24 Jan 2015 02:41:32 +0000 (02:41 +0000)]
Strangely, ignoring the roff(7) .na request was implemented in the man(7)
parser. Simplify the code by moving it into the roff(7) parser, also
making it work for mdoc(7).
brad [Sat, 24 Jan 2015 02:36:03 +0000 (02:36 +0000)]
Remove a comment that is no longer true with MCLGETI and jumbos on
some revisions of the chipsets.
schwarze [Sat, 24 Jan 2015 02:14:33 +0000 (02:14 +0000)]
change .Cm to .Ar for macro arguments
schwarze [Sat, 24 Jan 2015 01:59:40 +0000 (01:59 +0000)]
Support .RE with an argument; needed for audio/pms(1).
deraadt [Sat, 24 Jan 2015 00:29:06 +0000 (00:29 +0000)]
Userland (base & ports) was adapted to always include <netinet/in.h>
before <net/pfvar.h> or <net/if_pflog.h>. The kernel files can be
cleaned up next. Some sockaddr_union steps make it into here as well.
ok naddy
krw [Sat, 24 Jan 2015 00:20:35 +0000 (00:20 +0000)]
In shell statements use shell pattern '+([0-9])', not sed regular
expression '[0-9]*'.
Should fix problem reported by jsg@ where 'hostname.vlan6.bak' was
deemed to be an active vlan specification during upgrade.
No change to script output.
Tested by rpe@.
ok halex@ rpe@
krw [Fri, 23 Jan 2015 22:48:51 +0000 (22:48 +0000)]
More missing $OpenBSD$.
ok nicm@
espie [Fri, 23 Jan 2015 22:35:57 +0000 (22:35 +0000)]
a wee little bit more cleanup (more const and remove noise from CDIAGFLAGS...
-pedantic kind of requires -std=c99 here to avoid LL warnings)
okay miod@, millert@
miod [Fri, 23 Jan 2015 21:21:23 +0000 (21:21 +0000)]
-Wpointer-sign is supported by gcc 4 only.
schwarze [Fri, 23 Jan 2015 20:17:25 +0000 (20:17 +0000)]
While ignoring the .ta (set tab stops) and .ti (temp indent) requests
is sometimes harmless, it often causes seriously ugly output,
so flag these requests as unsupported rather than ignoring them.
Discussed with naddy@.
tedu [Fri, 23 Jan 2015 19:07:27 +0000 (19:07 +0000)]
braces to open a function go on their own line like god intended
tedu [Fri, 23 Jan 2015 18:52:31 +0000 (18:52 +0000)]
delete some code that doesn't (and shouldn't) run. ok deraadt millert
kettenis [Fri, 23 Jan 2015 17:09:23 +0000 (17:09 +0000)]
Make km_alloc(9) use the direct map for all "phys contig" mappings requested
by the caller on architectures that implement them. Make sure that we
physically align memory such that we meet any demands on virtual alignment
in this case. This should reduce the overhead of mapping large pool pages
for pools that request dma'able memory.
ok deraadt@, dlg@
millert [Fri, 23 Jan 2015 15:56:04 +0000 (15:56 +0000)]
Remove now-unused DebugFlags.
jsing [Fri, 23 Jan 2015 14:40:59 +0000 (14:40 +0000)]
Ensure that a ServerKeyExchange message is received if the selected cipher
suite uses ephemeral keys. This avoids an issue where an ECHDE cipher suite can
effectively be downgraded to ECDH, if the server omits the ServerKeyExchange
message and has provided a certificate with an ECC public key.
Issue reported to OpenSSL by Karthikeyan Bhargavan.
Based on OpenSSL.
Fixes CVE-2014-3572.
ok beck@
halex [Fri, 23 Jan 2015 14:38:24 +0000 (14:38 +0000)]
Killing my darling. Functionality and binary name moved to pkg_* and
friends. So long and thanks for all the fish.
ok deraadt@
schwarze [Fri, 23 Jan 2015 14:19:52 +0000 (14:19 +0000)]
Let .Aq/.Ao/.Ac print "<>" instead of the normal "\(la\(ra"
when the only child is .Mt, not when the preceding node is .An,
to improve robustness. Triggered by a question from Svyatoslav
Mishyn <juef at openmailbox dot org> (Crux Linux).
espie [Fri, 23 Jan 2015 13:38:16 +0000 (13:38 +0000)]
typo
espie [Fri, 23 Jan 2015 13:18:40 +0000 (13:18 +0000)]
remove a bunch of dangerous casts (useless casts from void * to something
else, in some cases by adding extra temporary variables.
IMO, it's much better practice to do
void *a;
int *p = a;
*p = 42;
rather than
void *a;
*(int *)a = 42;
okay miod@... to be revisited for some possible const additions later.
sthen [Fri, 23 Jan 2015 13:02:49 +0000 (13:02 +0000)]
Normal OpenBSD code fits in an 80 column term. From Jim Smith, ok dlg.
dlg [Fri, 23 Jan 2015 12:49:13 +0000 (12:49 +0000)]
break after return is useless.
dlg [Fri, 23 Jan 2015 12:41:23 +0000 (12:41 +0000)]
move from deferring vd requests with a task per message to a ring
of pointers to vd requests, and a single task to notify the taskq
that there's work on the ring.
the ring is modelled on what you usually get with network cards,
which is an array with a producer and consumer index. the interrupt
handler fills an entry in the ring at the producers index and
increments it. the task reads entries at the consumer index and
increments it until it reaches the same value as the producer.
tested and slightly tweaked by kettenis@
ok kettenis@
dlg [Fri, 23 Jan 2015 09:50:45 +0000 (09:50 +0000)]
get the args right for the fallback atomic_{cas,swap}_ptr
implementations, and then cast the pointer to the right type for
the gcc builtins.
jmc [Fri, 23 Jan 2015 07:41:16 +0000 (07:41 +0000)]
zap trailing whitespace;
tedu [Fri, 23 Jan 2015 02:37:25 +0000 (02:37 +0000)]
Remove the OK and ERR macros. They obfuscate the code and don't
help legibility. (unix system calls use 0 for ok, but hundreds of
other projects use 1 to indicate success.) Despite the name, many
system calls (e.g., open) also return not OK values for success.
It also cleans up some weird code like int crontab_fd = OK - 1;
This diff is mechanical in nature. Later I will fix the bugs it reveals.
ok deraadt
tedu [Fri, 23 Jan 2015 01:58:20 +0000 (01:58 +0000)]
don't need to define debugging 0 anymore
tedu [Fri, 23 Jan 2015 01:03:03 +0000 (01:03 +0000)]
minor debug removal cleanup
tedu [Fri, 23 Jan 2015 01:01:06 +0000 (01:01 +0000)]
remove debug code.
I think the level of debug code in cron is excessive for a program
that has reached feature complete. If cron needs to provide more
information to the user about its operational status, I think syslog
would be more appropriate. (The debug flags also disable forking
into the background, so they aren't even that useful for debugging a
live system.)
ok deraadt millert
schwarze [Fri, 23 Jan 2015 00:38:42 +0000 (00:38 +0000)]
Wonders of roff(7): Integer numbers in numerical expressions can carry
scaling units, and some manuals (e.g. in devel/grcs) actually use that,
so let's support it. Missing feature reported by naddy@.
schwarze [Thu, 22 Jan 2015 22:50:31 +0000 (22:50 +0000)]
Slightly improve \w width measurements:
Count special characters with the same width as ASCII characters
and treat all other escape sequences as if they had a width of 0.
Certainly not perfect, but a bit better.
For example, GNU RCS ci(1) needs this; reported by naddy@.
tedu [Thu, 22 Jan 2015 22:38:55 +0000 (22:38 +0000)]
delete useless casts. ok deraadt guenther millert
tedu [Thu, 22 Jan 2015 22:09:39 +0000 (22:09 +0000)]
remove a stupid -Wstrict-prototype warning by making the hash function
static. noticed by florian riehm
schwarze [Thu, 22 Jan 2015 21:36:44 +0000 (21:36 +0000)]
Traditional roff(7) explicitly allows certain control characters
in the input stream (SOH, STX, ETX, ENQ, ACK, BEL, BS) for specific
purposes (leaders, backspace, delimiters, .tr), but making sure
these don't leak through to the output is tricky, so mark them as
unsupported for now.
miod [Thu, 22 Jan 2015 21:18:56 +0000 (21:18 +0000)]
Fix logic botch causing warnings with Clang. Reported by dhill, matches
similar changes in FreeBSD a few years ago.
miod [Thu, 22 Jan 2015 21:17:43 +0000 (21:17 +0000)]
Possibly uninitialized variable. From Clang via dhill.
jmc [Thu, 22 Jan 2015 21:00:42 +0000 (21:00 +0000)]
heirarchy -> hierarchy;
millert [Thu, 22 Jan 2015 20:44:05 +0000 (20:44 +0000)]
Document that changes made to the directory hierarchy of the chroot
jail may inadvertanly allow a process to escape. Also mention the
problem of directory fd passing. Based on a diff from deraadt@
deraadt [Thu, 22 Jan 2015 20:24:41 +0000 (20:24 +0000)]
Provide a warning about chroot misuses (which sadly, seem to have become
quite popular because shiny). sshd cannot detect/manage/do anything
about these cases, best we can do is warn in the right spot in the man page.
ok markus
deraadt [Thu, 22 Jan 2015 19:47:00 +0000 (19:47 +0000)]
pool_setipl() on both pmap pools as a workaround for some sort of MP
race. This will certainly be revisited, but too much time has been
spent on it for now.
ok mpi
schwarze [Thu, 22 Jan 2015 19:26:16 +0000 (19:26 +0000)]
Don't let a failing mparse_open() clobber the filename pointer;
fixes error message content and a use after free
for .so with non-existent target when -Wall or -Tlint is given.
krw [Thu, 22 Jan 2015 19:10:17 +0000 (19:10 +0000)]
Processing $OpenBSD$ as well as sccs's @(#) is an OpenBSD extension, and
should stop displaying the line at the 2nd '$'. Clarify intended behaviour
in man page.
ok millert@ beck@ deraadt@
krw [Thu, 22 Jan 2015 19:00:24 +0000 (19:00 +0000)]
Use /etc/services names in all the default pf rules (most already
did). This allows any local changes to /etc/services to be effective
if all you have is the default.
Issue pointed out by Brian S. Vangsgaard on bugs@. Thanks!
ok phessler@ deraadt@
florian [Thu, 22 Jan 2015 18:22:27 +0000 (18:22 +0000)]
Clean up includes, while here fix a white space which lead to a false
positive during grep'ing.
OK reyk
mpi [Thu, 22 Jan 2015 17:55:45 +0000 (17:55 +0000)]
Let powerpc's bus_space(9) use the same pmap and uvm interfaces than the
other archs.
Specify the caching policy by passing PMAP_* flags to pmap_kenter_pa()
like the majority of our archs do and kill pmap_kenter_cache().
Spread some pmap_update() along the way.
While here remove the unused flag argument from pmap_fill_pte().
Finally convert the bus map/unmap functions to km_alloc/free() instead
of uvm_km_valloc/free().
Inputs from kettenis@ and miod@, ok miod@
reyk [Thu, 22 Jan 2015 17:42:09 +0000 (17:42 +0000)]
Clean up the relayd headers with help of include-what-you-use and some
manual review. Based on common practice, relayd.h now includes the
necessary headers for itself.
OK benno@
millert [Thu, 22 Jan 2015 16:25:07 +0000 (16:25 +0000)]
Only allow the -r flag when sending a message; from Martin Brandenburg
reyk [Thu, 22 Jan 2015 15:23:50 +0000 (15:23 +0000)]
spacing
reyk [Thu, 22 Jan 2015 15:21:28 +0000 (15:21 +0000)]
spacing
reyk [Thu, 22 Jan 2015 15:21:05 +0000 (15:21 +0000)]
wrap long lines; spacing.
Repeat after me: "Lines are not longer than 80 characters long" and
"mg(1) is the only true editor, I'll use ESC-q to wrap the lines".
krw [Thu, 22 Jan 2015 14:33:01 +0000 (14:33 +0000)]
Replace some obvious '$OpenBSD' and '$OpenBSD:' typos with '$OpenBSD$'.
Pointed out by dickman@.
ok sthen@ phessler@
deraadt [Thu, 22 Jan 2015 13:16:24 +0000 (13:16 +0000)]
sync
jsing [Thu, 22 Jan 2015 11:16:56 +0000 (11:16 +0000)]
Use field names in struct initialisers.
No change to generated assembly.
jmc [Thu, 22 Jan 2015 11:08:54 +0000 (11:08 +0000)]
last entry in NAME should not have a trailing comma;
mpi [Thu, 22 Jan 2015 10:27:47 +0000 (10:27 +0000)]
Reduce the number of intermediate buffers by pre-allocating DMA buffers
in the report functions instead of letting the stack do it magically for
us.
Reviewed and tested by David Higgs, thanks!
mpi [Thu, 22 Jan 2015 10:23:47 +0000 (10:23 +0000)]
Use correct error type and remove unused interface pointer.
From Fabian Raetz.
reyk [Thu, 22 Jan 2015 09:29:04 +0000 (09:29 +0000)]
Add MLINK for tls_config_set_ca_mem()
reyk [Thu, 22 Jan 2015 09:26:05 +0000 (09:26 +0000)]
LibreSSL now supports loading of CA certificates from memory, replace
the internal and long-serving ssl_ctx_load_verify_memory() function
with a call to the SSL_CTX_load_verify_mem() API function. The
ssl_privsep.c file with hacks for using OpenSSL in privsep'ed
processes can now go away; portable versions of smtpd and relayd
should start depending on LibreSSL or they have to carry ssl_privsep.c
in openbsd-compat to work with legacy OpenSSL. No functional change.
Based on previous discussions with gilles@ bluhm@ and many others
OK bluhm@ (as part of the libcrypto/libssl/libtls diff)
reyk [Thu, 22 Jan 2015 09:16:24 +0000 (09:16 +0000)]
Allow to to load the CA chain directly from memory instead of
specifying a file. This enables CA verification in privsep'ed
processes that are running chroot'ed without direct access to the
certificate files.
With feedback, tests, and OK from bluhm@
reyk [Thu, 22 Jan 2015 09:12:57 +0000 (09:12 +0000)]
Support CA verification in chroot'ed processes without direct file
access to the certificates. SSL_CTX_load_verify_mem() is a frontend
to the new X509_STORE_load_mem() function that allows to load the CA
chain from a memory buffer that is holding the PEM-encoded files.
This function allows to handle the verification in privsep'ed code.
Adopted for LibreSSL based on older code from relayd (by pyr@ and myself)
With feedback and OK bluhm@
reyk [Thu, 22 Jan 2015 09:06:39 +0000 (09:06 +0000)]
Add X509_STORE_load_mem() to load certificates from a memory buffer
instead of disk. OpenSSL didn't provide a built-in API from loading
certificates in a chroot'ed process that doesn't have direct access to
the files. X509_STORE_load_mem() provides a new backend that will be
used by libssl and libtls to implement such privsep-friendly
functionality.
Adopted for LibreSSL based on older code from relayd (by pyr@ and myself)
With feedback and OK bluhm@
deraadt [Thu, 22 Jan 2015 05:48:17 +0000 (05:48 +0000)]
delete annoying white space that annoy
doug [Thu, 22 Jan 2015 05:48:00 +0000 (05:48 +0000)]
Make it obvious which openssl test complained and whether it was expected.
ok bcook@
jsg [Thu, 22 Jan 2015 05:35:27 +0000 (05:35 +0000)]
Recognise 'F'/'f' constant suffix for single precision floating point.
Prevents indent from inserting a space which broke the build of the
development version of Mesa.
ok millert@ deraadt@
dlg [Thu, 22 Jan 2015 05:09:41 +0000 (05:09 +0000)]
pool_chk_page iterates over a pages free item lists and checks that
the items address is within the page. it does that by masking the
item address with the page mask and comparing that to the page
address.
however, if we're using large pages with external page headers, we
dont request that the large page be aligned to its size. eg, on an
arch with 4k pages, an 8k large page could be aligned to 4k, so
masking bits to get the page address wont work.
these incorrect checks were distracting while i was debugging large
pages on landisk.
this changes it to do range checks to see if the item is within the
page. it also checks if the item is on the page before checking if
its magic values or poison is right.
ok miod@
bcook [Thu, 22 Jan 2015 03:56:27 +0000 (03:56 +0000)]
Assume that the size of a pointer will not change at runtime.
Change the runtime check for whether a long is smaller than a pointer to a
compile-time check. Replace the silly hash for LLP64 platforms.
ok tedu@
guenther [Thu, 22 Jan 2015 03:43:58 +0000 (03:43 +0000)]
amd's nfs_prot.x file has some tweaks from the standard; automate them with ed.
Regenerate the amd's NFS RPC stubs with a current rpcgen, automating the
post-generation tweaks to the svc stubs. However, do follow the modern
naming style where the svc stubs have a _svc suffix.
As a side benefit, this eliminates the need to #include <nfs/nfsproto.h>
This is all a prelude to updating amd to talk NFSv3 with the kernel for
its own "toplvl" mounts, to squash another y2038 issue.
dlg [Thu, 22 Jan 2015 01:19:51 +0000 (01:19 +0000)]
bring back r1.80:
pass the size of the softc to free.
this time we only dereference the cfattach structure if we actually
need it once the refcount has dropped to 0.
tested by krw@ who found the original panic r1.80 was backed out for.
putting this in again so i can find out when else will break.
bluhm [Thu, 22 Jan 2015 00:34:32 +0000 (00:34 +0000)]
Make syslogd tests more reliable on slow machines. All tests pass
on my old sparc64.
deraadt [Thu, 22 Jan 2015 00:07:15 +0000 (00:07 +0000)]
Do not need to include <sys/cdefs.h> when headers included above end up
doing so.
jmc [Wed, 21 Jan 2015 23:48:05 +0000 (23:48 +0000)]
tweak previous; ok schwarze
deraadt [Wed, 21 Jan 2015 23:06:53 +0000 (23:06 +0000)]
3 different .h files here include ioccom.h. Do not need to include it directly
deraadt [Wed, 21 Jan 2015 23:06:10 +0000 (23:06 +0000)]
if_media.c needs net/if_var.h. This fixes the build with IFMEDIA_DEBUG.
from Fabian Raetz
tedu [Wed, 21 Jan 2015 22:33:22 +0000 (22:33 +0000)]
complete the circle so all ql pages xref all other ql pages
deraadt [Wed, 21 Jan 2015 22:28:09 +0000 (22:28 +0000)]
Do not need sys/cdefs.h
deraadt [Wed, 21 Jan 2015 22:26:52 +0000 (22:26 +0000)]
remove #if 0 cdefs.h blocks
deraadt [Wed, 21 Jan 2015 22:23:52 +0000 (22:23 +0000)]
To satisfy kernel grovellers and bad (but document) sysctl
practice, be pragmatic and #include <sys/timeout.h> for
struct tcpb (glorious namespace violation)
ok kettenis millert sthen
reyk [Wed, 21 Jan 2015 22:23:24 +0000 (22:23 +0000)]
Ooops, no need to include sys/cdefs.h.
Pointed out by florian@
reyk [Wed, 21 Jan 2015 22:21:05 +0000 (22:21 +0000)]
httpd is based on relayd and had included many headers that are only
needed by its ancestor. jsg@, include-what-you-use, and some manual
review helped to cleanup the headers (take iwyu with a grain of salt).
Based on common practice, httpd.h now also includes the necessary
headers for itself.
OK florian@
deraadt [Wed, 21 Jan 2015 21:50:32 +0000 (21:50 +0000)]
Include <netinet/in.h> before <net/pfvar.h>. In a future change when
ports is ready, <net/pfvar.h> will stop including a pile of balony.
bluhm [Wed, 21 Jan 2015 21:32:42 +0000 (21:32 +0000)]
Remove the useless variable ifa in rt_getifa().
OK mpi@
schwarze [Wed, 21 Jan 2015 20:20:49 +0000 (20:20 +0000)]
Rudimentary implementation of the roff(7) \o escape sequence (overstrike).
This is of some relevance because the pod2man(1) preamble abuses it
for the icelandic letter Thorn, instead of simply using \(TP and \(Tp.
Missing feature found by sthen@ in DateTime::Locale::is_IS(3p).
miod [Wed, 21 Jan 2015 20:05:29 +0000 (20:05 +0000)]
By popular demand, put NFS, ipv6 and vlan support in sparc installation media.
ok deraadt@
schwarze [Wed, 21 Jan 2015 19:40:22 +0000 (19:40 +0000)]
Improve overstriking. When overstriking a wider character with a
narrower one, center the latter horizontally. After a group of
characters printed in the same position, advance by the width of
the widest one among them.
naddy [Wed, 21 Jan 2015 19:38:53 +0000 (19:38 +0000)]
Build the argument list for halt/reboot without excessive use of
the conditional operator. Adapted from NetBSD. ok miod@
deraadt [Wed, 21 Jan 2015 19:34:24 +0000 (19:34 +0000)]
Truncate progname to NAME_MAX in the syslog message, to ensure other
information also makes it through. This is a compromise to cope with
the absolutely ridiculous setprogname() API.
ok various discussions