kurt [Wed, 24 Dec 2014 14:04:09 +0000 (14:04 +0000)]
Expand Elf_Rel relocations to include DT_JMPREL. Inspect DT_PLTREL value
to determine if DT_JMPREL relocations are REL or RELA and conditionally
perform DT_JMPREL in either REL or RELA as needed (idea from kettenis@).
Remove unneeded i386 RELA implementation. i386 static pie working now.
okay kettenis@
eric [Wed, 24 Dec 2014 13:53:39 +0000 (13:53 +0000)]
bump version
eric [Wed, 24 Dec 2014 13:51:31 +0000 (13:51 +0000)]
Correctly fallback to PLAIN if opportunistics TLS fails during TLS handshake.
fix by Stefan Sieg
ok gilles
ajacoutot [Wed, 24 Dec 2014 13:04:43 +0000 (13:04 +0000)]
Implement some kind ordering in the startup of package script daemons.
'rcctl order ...' will prepend the daemon(s) given as argument to the
pkg_scripts line (it can be all daemons, some, or just one).
Without argument, it'll display the current order.
While here, drop a couple of examples from the man page to only leave
the most interesting one.
ok schwarze@ rpe@ (with tweaks) jasper@ robert@ sthen@
espie [Wed, 24 Dec 2014 12:50:22 +0000 (12:50 +0000)]
recheck list for non emptyness *after* filtering obsolete packages.
schwarze [Wed, 24 Dec 2014 09:57:41 +0000 (09:57 +0000)]
When a man(7) document contains unreasonably large numbers for
indentations or paragraph distances, large output may be generated,
which is practically the same as an endless loop; found by jsg@
with afl.
Reject such unreasonably large numbers beyond arbitrary limits
similar to those used by groff (max. 65 blank lines between paragraphs
and max. SHRT_MAX characters per output line) and fall back to
defaults when exceeded. Having the limits behave in exactly the
same way is not relevant.
kettenis [Wed, 24 Dec 2014 08:58:46 +0000 (08:58 +0000)]
Fix previos. Pointed out by kurt@.
eric [Wed, 24 Dec 2014 08:43:58 +0000 (08:43 +0000)]
missing include
afresh1 [Wed, 24 Dec 2014 04:45:44 +0000 (04:45 +0000)]
Use an extension that installperl skips for the Config_heavy modifications
afresh1 [Wed, 24 Dec 2014 03:53:04 +0000 (03:53 +0000)]
Avoid /usr/local while building perl, but allow it for ports
commit it deraadt@
lteo [Wed, 24 Dec 2014 03:25:42 +0000 (03:25 +0000)]
Add missing argument names, and sync the argument types and names with
the ones used in the code.
pointed out by schwarze@
lteo [Wed, 24 Dec 2014 03:22:17 +0000 (03:22 +0000)]
Clean up CIPHERS and related sections:
- Sync cipher strings with the ones that are actually implemented.
- Remove CIPHERS SUITE NAMES (the actual cipher suites can be obtained
via "openssl ciphers -v"), CIPHERS NOTES, and CIPHERS HISTORY
sections.
- Stop mentioning export cipher suites since they have already been
removed.
feedback from deraadt@ and jmc@
ok jmc@
djm [Tue, 23 Dec 2014 22:42:48 +0000 (22:42 +0000)]
KNF and add a little more debug()
miod [Tue, 23 Dec 2014 21:39:12 +0000 (21:39 +0000)]
Pass real sizes to free()
miod [Tue, 23 Dec 2014 21:20:40 +0000 (21:20 +0000)]
Fix an obvious free() argument misuse which has been there since r1.1.
tedu [Tue, 23 Dec 2014 20:40:06 +0000 (20:40 +0000)]
as in libc, always assume digest is passed to Final. no null allowed.
kettenis [Tue, 23 Dec 2014 20:38:20 +0000 (20:38 +0000)]
Use the page size passed by the kernel in the Auxilliary Vector to handle
architectures with variable page size.
tedu [Tue, 23 Dec 2014 20:34:41 +0000 (20:34 +0000)]
as in libc, there's no need to check for calling Init on null context
tedu [Tue, 23 Dec 2014 20:32:05 +0000 (20:32 +0000)]
not necessary to zero hash context; the hash final functions all do that.
tedu [Tue, 23 Dec 2014 20:29:23 +0000 (20:29 +0000)]
tmp is a bad name for a shactx
pascal [Tue, 23 Dec 2014 19:32:16 +0000 (19:32 +0000)]
Use ${STATIC} instead of hardcoded -static in order to take advantage of
static pie.
ok deraadt@ miod@ benno@
tedu [Tue, 23 Dec 2014 19:21:58 +0000 (19:21 +0000)]
use endian.h swap macros instead of home grown versions
deraadt [Tue, 23 Dec 2014 17:42:57 +0000 (17:42 +0000)]
new SRCDIRS model seems to work
deraadt [Tue, 23 Dec 2014 17:20:11 +0000 (17:20 +0000)]
sparc64 can move to static pie
deraadt [Tue, 23 Dec 2014 17:17:16 +0000 (17:17 +0000)]
successful switchover to non-reach-around SRCDIR
deraadt [Tue, 23 Dec 2014 17:16:00 +0000 (17:16 +0000)]
/bin and /sbin are moving towards static PIE, so on many architectures
the PIC .o files are unsuitable for static "instbin". This adds more
work at build time, but the result will be optimized for size.
kettenis [Tue, 23 Dec 2014 16:45:04 +0000 (16:45 +0000)]
Make sure the GOT and PLT are not writable.
Note that ommitting PROT_EXEC for the PLT is deliberate; static PIE
binaries should never actually hit the PLT.
We're still debating what to do when mprotect(2) fails. But that is no
excuse not to at least attempt to fix things up.
ok deraadt@
deraadt [Tue, 23 Dec 2014 16:35:53 +0000 (16:35 +0000)]
Small changes to buil
deraadt [Tue, 23 Dec 2014 16:27:18 +0000 (16:27 +0000)]
do not expose "ra" to cpp because it muddles up the .c code above.
instead handle it internally as $ra
solution from kettenis, ok guenther
espie [Tue, 23 Dec 2014 14:05:16 +0000 (14:05 +0000)]
missing test-depends thingy.
explicitly document that some lists are sorted
schwarze [Tue, 23 Dec 2014 13:48:15 +0000 (13:48 +0000)]
support negative horizontal widths in man(7);
minus twenty lines of code in spite of enhanced functionality
reyk [Tue, 23 Dec 2014 13:18:23 +0000 (13:18 +0000)]
pf now supports source-hash and random with tables so we can allow it
in redirections. Thanks for help and input from jsg and yasuoka who
reminded me to dig out and update these old diffs for pf and relayd.
ok jsg@
kettenis [Tue, 23 Dec 2014 12:25:43 +0000 (12:25 +0000)]
Set up the linkage table register (%r19) before calling _dl_boot_bind.
aoyama [Tue, 23 Dec 2014 10:59:29 +0000 (10:59 +0000)]
We do not need to grab the kernel lock for clock interrupts on luna88k,
as same as aviion.
suggested and ok miod@
shadchin [Tue, 23 Dec 2014 10:24:22 +0000 (10:24 +0000)]
Remove function mouse_map. This function is redundant.
ok zhuk@
schwarze [Tue, 23 Dec 2014 10:09:23 +0000 (10:09 +0000)]
fix typo in previous
ajacoutot [Tue, 23 Dec 2014 10:07:44 +0000 (10:07 +0000)]
Consistency: put variables between curly braces.
No functional change intended.
schwarze [Tue, 23 Dec 2014 09:31:17 +0000 (09:31 +0000)]
some scaling unit fixes:
- .sp with an invalid argument is .sp 1v, not .sp 0v
- in man(1), trailing garbage doesn't make scaling units invalid
espie [Tue, 23 Dec 2014 08:46:31 +0000 (08:46 +0000)]
tweak meta-info checking a bit.
- remove IsLink tests, there's no reason to treat them specially.
- files are forced to root, no need to allow for bin anymore.
- force libraries to be not executable, if there's no explicit @mode
annotation
schwarze [Tue, 23 Dec 2014 08:15:37 +0000 (08:15 +0000)]
even if the second argument to .IP is invalid, don't print it
tedu [Tue, 23 Dec 2014 07:54:13 +0000 (07:54 +0000)]
to be safe, revert locking change until further tested.
tedu [Tue, 23 Dec 2014 07:42:46 +0000 (07:42 +0000)]
change pmap pools from nointr to waitok. pvpool left alone for now.
schwarze [Tue, 23 Dec 2014 06:16:21 +0000 (06:16 +0000)]
Fix vertical scaling. Obviously, nobody ever had a serious look at this.
Basic units, centimeters, points, ens, ems, and the rounding algorithm
were all wrong, only inches, pica, and the default vertical span worked.
tedu [Tue, 23 Dec 2014 04:56:47 +0000 (04:56 +0000)]
convert pool_init nointr to waitok
tedu [Tue, 23 Dec 2014 04:54:45 +0000 (04:54 +0000)]
knf
tedu [Tue, 23 Dec 2014 04:53:20 +0000 (04:53 +0000)]
convert from nointr to waitok
tedu [Tue, 23 Dec 2014 04:48:47 +0000 (04:48 +0000)]
optimize locking a wee bit by holding it for critical parts only
tedu [Tue, 23 Dec 2014 04:47:30 +0000 (04:47 +0000)]
I don't like these macros, they obscure the code.
We can use pool_setipl instead of doing the dance ourselves.
The bufpool is already setipl, we don't need to dance at all. We
should zero the buf.
ok deraadt dlg
deraadt [Tue, 23 Dec 2014 04:08:01 +0000 (04:08 +0000)]
on-media chroot went away a while back
tedu [Tue, 23 Dec 2014 03:29:52 +0000 (03:29 +0000)]
the kvm database only needs to be readable by kmem group. make it so.
schwarze [Tue, 23 Dec 2014 03:27:36 +0000 (03:27 +0000)]
In a2roffsu(), do not parse the number twice.
Gets rid of 25 lines of code and one static buffer.
No functional change for numbers shorter than BUFSIZ characters.
tedu [Tue, 23 Dec 2014 03:26:24 +0000 (03:26 +0000)]
unifdef INET
tedu [Tue, 23 Dec 2014 03:24:08 +0000 (03:24 +0000)]
unifdef some more INET. v4 4life.
tedu [Tue, 23 Dec 2014 02:01:57 +0000 (02:01 +0000)]
convert nointr pool_init argument to pr_waitok
schwarze [Tue, 23 Dec 2014 01:57:11 +0000 (01:57 +0000)]
correctly handle scaling units after .PD
tedu [Tue, 23 Dec 2014 01:55:03 +0000 (01:55 +0000)]
change req pool alloc to null. add prwaitok here and nfs_node_pool which
is also sleeping in all callers, but already used null
tedu [Tue, 23 Dec 2014 01:53:57 +0000 (01:53 +0000)]
change pool allocator to null and pass waitok to indicate nointr
tedu [Tue, 23 Dec 2014 01:53:33 +0000 (01:53 +0000)]
change pool_init allocator to NULL and pass PR_WAITOK in flags as a sign
that these don't need to support interrupts
deraadt [Tue, 23 Dec 2014 01:24:50 +0000 (01:24 +0000)]
backout previous, because libkvm needs two pieces. will let mike
find a different way.
dlg [Tue, 23 Dec 2014 01:12:33 +0000 (01:12 +0000)]
force the pool of pmapvp onto PAGE_SIZE allocations by specifying a
pool allocator. pmapvp is 1024 bytes, and the size * 8 change in pools
without an allocator being specified tries to place it on large pages.
you need pmap to use large pages, and pmap isnt set up yet.
fixed a very early fault on macppc.
debugged with and tested by krw@
ok deraadt@ krw@
mlarkin [Mon, 22 Dec 2014 23:59:43 +0000 (23:59 +0000)]
Move PD_MASK, PT_MASK and a couple macros into pmap.c. The only other
user of these was hibernate, which now gets its own PD_MASK (since
the resume time PD_MASK is essentially disjoint from the runtime
PD_MASK). No functional change, just moving the deck chairs around in
preparation for an upcoming change.
ok deraadt
schwarze [Mon, 22 Dec 2014 23:26:20 +0000 (23:26 +0000)]
The code already pays attention not to close the same block twice.
Similarly, avoid having the same block break two other blocks.
In some situations, this could lead to an endless loop in rew_sub()
found by jsg@ with afl.
Minimal example: .Po Ao Pc Bo Pc Ac Bc
mlarkin [Mon, 22 Dec 2014 22:33:51 +0000 (22:33 +0000)]
Clean up some weird spacing. No functional change.
mlarkin [Mon, 22 Dec 2014 22:22:35 +0000 (22:22 +0000)]
fix an error in piglet allocation when requesting an alignment < PAGE_SIZE
(which we never did, but it was a bug nonetheless).
ok kettenis, deraadt
kurt [Mon, 22 Dec 2014 21:59:18 +0000 (21:59 +0000)]
Link -static -pie executables with rcrt0.o instead of crt0.o such that they
self-relocate.
kurt [Mon, 22 Dec 2014 21:58:25 +0000 (21:58 +0000)]
Self-relocation code for i386.
krw [Mon, 22 Dec 2014 20:08:05 +0000 (20:08 +0000)]
Replace switch workq with taskq, using the blambert@ method (tm).
Tested with non-drm and wsfb systems. ok kettenis@ miod@
kettenis [Mon, 22 Dec 2014 19:32:49 +0000 (19:32 +0000)]
Link -static -pie executables with rcrt0.o instead of crt0.o such that they
self-relocate.
Based on a diff from kurt@
ok deraadt@
deraadt [Mon, 22 Dec 2014 19:18:26 +0000 (19:18 +0000)]
sync
deraadt [Mon, 22 Dec 2014 19:14:59 +0000 (19:14 +0000)]
Static PIE has been delayed for quite a while. By pushing hard with pascal
towards a wimpy (but sufficient) model, kurt and kettenis got upset enough
to do it the right way, right away before we got out of hand. Bravo!
We no longer need /sbin/ld.so on the new roadmap.
kettenis [Mon, 22 Dec 2014 19:04:24 +0000 (19:04 +0000)]
Link -static -pie executables with rcrt0.o instead of crt0.o such that they
self-relocate.
Based on a diff for amd64 from kurt@
kettenis [Mon, 22 Dec 2014 19:02:58 +0000 (19:02 +0000)]
Self-relocation code for hppa.
tedu [Mon, 22 Dec 2014 18:21:10 +0000 (18:21 +0000)]
remove never used in openbsd tahoe support. and ns32k. and pmax.
ok deraadt millert
kettenis [Mon, 22 Dec 2014 16:04:35 +0000 (16:04 +0000)]
Link -static -pie executables with rcrt0.o instead of crt0.o such that they
self-relocate.
Based on a diff for amd64 from kurt@
deraadt [Mon, 22 Dec 2014 15:57:17 +0000 (15:57 +0000)]
sync
tedu [Mon, 22 Dec 2014 15:39:28 +0000 (15:39 +0000)]
dickman noticed /var/rwho keeps coming back. remove it.
kettenis [Mon, 22 Dec 2014 15:05:24 +0000 (15:05 +0000)]
Make it possible to execute PIE binaries that don't have an PT_INTERP segment
(and therefore no interpreter). Necessary to make self-relocating "static"
PIE working.
This will also allow execution of shared libraries that have the 'x' bit set.
Those shouldn't exist, but unfortunately people outside OpenBSD think
differently which means third-party software sometimes installs shared
libraries with the 'x' bit set.
ok kurt@, deraadt@
espie [Mon, 22 Dec 2014 14:24:56 +0000 (14:24 +0000)]
when we run into real errors, the progress meter is distracting, so have
a method ->disable that does something nice to the display, and stops
the progress meter right before we display our first real error.
kettenis [Mon, 22 Dec 2014 14:17:22 +0000 (14:17 +0000)]
Teach ld(1) not to add a PT_INTERP entry for -static -pie.
ok kurt@
kettenis [Mon, 22 Dec 2014 14:09:58 +0000 (14:09 +0000)]
Teach ld(1) not to add a PT_INTERP entry for -static -pie.
ok kurt@
kettenis [Mon, 22 Dec 2014 13:53:01 +0000 (13:53 +0000)]
Self-relocation code for sparc64.
kettenis [Mon, 22 Dec 2014 13:32:51 +0000 (13:32 +0000)]
When skipping a relocation because the referenced symbol is undefined, make
sure we move on to the next relocation entry.
While there, also skip relocations for REL architectures.
shadchin [Mon, 22 Dec 2014 11:21:49 +0000 (11:21 +0000)]
Now does not need to be initialized event.value.
This not used anymore.
ok deraadt@
mpi [Mon, 22 Dec 2014 11:17:20 +0000 (11:17 +0000)]
Operations on the global prefix or address lists should be done under
splsoftnet().
mpi [Mon, 22 Dec 2014 11:05:53 +0000 (11:05 +0000)]
Make sure rtrequest1(9) is called under splsoftnet().
jmc [Mon, 22 Dec 2014 09:26:31 +0000 (09:26 +0000)]
add fingerprinthash to the options list;
jmc [Mon, 22 Dec 2014 09:24:59 +0000 (09:24 +0000)]
tweak previous;
florian [Mon, 22 Dec 2014 09:13:35 +0000 (09:13 +0000)]
Out out you evil network daemon.
OK deraadt@ some time ago
djm [Mon, 22 Dec 2014 09:05:17 +0000 (09:05 +0000)]
mention ssh -Q feature to list supported { MAC, cipher, KEX, key }
algorithms in more places and include the query string used to
list the relevant information; bz#2288
jmc [Mon, 22 Dec 2014 08:24:17 +0000 (08:24 +0000)]
tweak previous;
djm [Mon, 22 Dec 2014 08:06:03 +0000 (08:06 +0000)]
regression test for multiple required pubkey authentication;
ok markus@
djm [Mon, 22 Dec 2014 08:04:23 +0000 (08:04 +0000)]
correct description of what will happen when a AuthorizedKeysCommand is
specified but AuthorizedKeysCommandUser is not (sshd will refuse to start)
djm [Mon, 22 Dec 2014 07:55:51 +0000 (07:55 +0000)]
make internal handling of filename arguments of "none" more consistent
with ssh. "none" arguments are now replaced with NULL when the
configuration is finalised.
Simplifies checking later on (just need to test not-NULL rather than
that + strcmp) and cleans up some inconsistencies. ok markus@
djm [Mon, 22 Dec 2014 07:51:30 +0000 (07:51 +0000)]
remember which public keys have been used for authentication and
refuse to accept previously-used keys.
This allows AuthenticationMethods=publickey,publickey to require
that users authenticate using two _different_ pubkeys.
ok markus@
djm [Mon, 22 Dec 2014 07:24:11 +0000 (07:24 +0000)]
fix passing of wildcard forward bind addresses when connection
multiplexing is in use; patch from Sami Hartikainen via bz#2324;
ok dtucker@
djm [Mon, 22 Dec 2014 06:14:29 +0000 (06:14 +0000)]
make this slightly easier to diff against portable
dlg [Mon, 22 Dec 2014 04:43:38 +0000 (04:43 +0000)]
add TIMEOUT_INITIALIZER for initting timeout declaractions.
similar to TASK_INITIALIZER and all the queue _INITIALIZER things.
ok deraadt@
kurt [Mon, 22 Dec 2014 03:51:08 +0000 (03:51 +0000)]
Introduce new csu0 variant for -static -pie binaries to use called
rcsu0.o where the initial 'r' is for relocatable. rcsu0.o performs
self-relocation on static pie binaries by calling a slightly modified
copy of ld.so's _dl_boot_bind() in boot.h.
The first arch implementatation is also included for amd64 where
__start calls _dl_boot_bind() and then calls ___start(). Includes
parts from kettenis@ to help get R_X86_64_64 relocations working
and proper handling for undefined weak symbols.
This is the first part of several to get static pie self-relocating
binaries working. binutils, gcc and kernel changes are forthcoming
to complete the solution, then per-arch implementations are needed
for MD_RCRT0_START in csu.
okay kettenis@ pascal@ deraadt@
tedu [Mon, 22 Dec 2014 03:38:01 +0000 (03:38 +0000)]
convert to using siphash
tedu [Mon, 22 Dec 2014 03:33:18 +0000 (03:33 +0000)]
fix docs for NOBROADCASTKILL