Age | Commit message (Collapse) | Author |
|
|
|
commit.
|
|
a little pointer-sized gap before the return value. This protects
from common off-by-one type of bugs and costs nothing: the attacker
won't be able to overwrite return pointer. Developed at m2k14,
thanks for the hackathon!
|
|
This will make the environment more hostile and help detect bugs
that depend on overrunning one variable into another, with almost
no performance cost.
Discussed with Theo at m2k14 hackathon. "oh god yes" tedu@, "oh nice" djm@
|
|
a bad idea, for it causes false positives, which then can cause ICE trying
to protect narrower-than-int incoming arguments, if building with
-fstack-protector-all.
From etoh@'s gcc 3.4 tree, unbreaks -fstack-protector-all on m88k (well, maybe
not completely, but it makes it compile more files, such as pf.c which contains
functions receiving uint16_t arguments pushed on the stack due to the
exhaustion of caller-saved registers).
|
|
|
|
16byte boundary. However, GCC 16-byte aligns arrays of >=16 BITS,
not BYTES.
This diff improves bug detectability for code which has local arrays
of [16 .. 127] bits: in those cases SSP will now detect even 1-byte
overflows.
OK kettenis@. Tested in snaps for a week.
|
|
already manually disabled).
ok deraadt@
|
|
more comfortable.
Reminded by brad@
|
|
ok miod@
|
|
was present, but commented.
This fixes code generation of usr.sbin/dhcpd/memory.c!new_address_range()
on vax.
|
|
mod_perl).
ok sthen@ millert@
|
|
_moddi3.o gets protected and landisk bootblocks got broken.
Fundamentally this causes a link dependency on libc that we'll not
always be able to satisfy. Spotted by deraadt@.
OK matthew@, kettenis@, guenther@.
|
|
fucompi was correct.
Unbreaks www/webkit on i386.
ok sthen@
|
|
ok deraadt@
|
|
additional functions --- those that have local array definitions,
or have references to local frame addresses.
Note that upstream uses -fstack-protector-strong and misleads people:
-fstack-protector, -fstack-protector-all, -fstack-protector-strong
can you tell which one is safe?
Luckily, OpenBSD has its own compiler and is able to do the right
thing for security: this is enabled by default, and called
-fstack-protector.
OK deraadt@, miod@. Tested for 3 months.
|
|
|
|
OK millert@ deraadt@
|
|
OK espie@ sthen@ deraadt@
|
|
OK espie@ sthen@ deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
config.sh.OpenBSD are the only local changes.
|
|
sendmail.8 note by jmc
|
|
Taken from binutils 2.17.
ok guenther@
|
|
|
|
Makes it possible to build an i386 kernel with binutils-2.17 again.
ok miod@
|
|
|
|
xrstor, and xsaveopt.
based on kettenis's original that did xgetbv and xsetbv
ok kettenis@
|
|
Sendmail, Inc -> Proofpoint name change. See RELEASE_NOTES for
actual changes.
|
|
ok deraadt@
|
|
This includes additional functions to be protected --- those that
have local array definitions, or have references to local frame
addresses.
Miod verified that this works on real hardware, and not just on the
cross-compiled monster I tested this on.
|
|
One .Nm macro per name, and pass punctuation a as seperate argument.
Found with mandocdb(8).
OK jmc@.
|
|
which operates on element counts rather than buffer sizes. I'll start
annotating headers in a few weeks, after the hackathon. OK millert@.
|
|
additional functions to be protected --- those that have local array
definitions, or have references to local frame addresses.
Note 1: Han explicitly licensed this under GPLv2 for us.
Note 2: Do *not* use this anywhere in "src" Makefiles, as the other
GCC doesn't have this option yet (but I'm working on it).
|
|
size almost always has security implications. I think this quote
from Theo summarizes the situation best:
Which is why it is important to have at least one unforgiving
platform in the ecosystem which properly labels shit shit.
That's OpenBSD. If anyone can't handle that, they can go to platforms
which hide the reality.
|
|
ok miod@, matthew@
|
|
stpcpy, strcat, strcpy. Also don't simplify some safe builtins
into unsafe ones, otherwise we'll hit the linker with the bogus
warning. OK miod@, millert@.
|
|
work on alpha.
tested by naddy@, deraadt@
|
|
(long). Use (long long) and print it with %ll08x instead. ok zhuk@
|
|
|
|
sprintf, vsprintf, stpcpy, strcat, strcpy. We're hitting the linker
again, therefore the warning will show up now.
|