Date: Thu, 28 Jul 2016 10:05:29 +0200 From: Ed Schouten <ed@nuxi.nl> To: "Conrad E. Meyer" <cem@freebsd.org> Cc: Shawn Webb <shawn.webb@hardenedbsd.org>, freebsd-current <freebsd-current@freebsd.org>, Ed Maste <emaste@freebsd.org> Subject: Re: SafeStack in base Message-ID: <CABh_MK=xdVZGYAVsg%2BKY8W1qtT8RD%2BYfOrKSQbMNSYGBCNpvbQ@mail.gmail.com> In-Reply-To: <CAG6CVpWgXMNHsdo0doL0FDygykZY3vYm9w8897p4nyetTmGfew@mail.gmail.com> References: <20160727225527.GG13428@mutt-hardenedbsd> <CAG6CVpWgXMNHsdo0doL0FDygykZY3vYm9w8897p4nyetTmGfew@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Conrad, 2016-07-28 2:02 GMT+02:00 Conrad Meyer <cem@freebsd.org>: > The problem appears to be an upstream limitation of > -fsanitize=3Dsafe-stack: "Most programs, static libraries, or individual > files can be compiled with SafeStack as is. =E2=80=A6 Linking a DSO with > SafeStack is not currently supported." [0] I'm not sure, but I thought the reason for this is due to the fact that SafeStack uses some kind of additional library to wrap around pthread_create() to create threads that have SafeStack properly set up. If we were to actually integrate this functionality into our C runtime/pthread library to create threads with two stacks by default, then I couldn't think of a reason why it shouldn't work with DSOs. SafeStack merely depends on an additional TLS variable -- nothing else. --=20 Ed Schouten <ed@nuxi.nl> Nuxi, 's-Hertogenbosch, the Netherlands KvK-nr.: 62051717
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CABh_MK=xdVZGYAVsg%2BKY8W1qtT8RD%2BYfOrKSQbMNSYGBCNpvbQ>