additional compiler hardening flags

Darren Tucker dtucker at zip.com.au
Sat Jan 18 21:14:00 EST 2014


On Sat, Jan 18, 2014 at 3:03 AM, Corinna Vinschen <vinschen at redhat.com> wrote:
[warning fixes]

Thanks!

> A cygwin problem: The getopt variables (like optargs, optind) are
> defined in getopt.h already.  Unfortunately they are defined as
> "declspec(dllimport)" for historical reasons, because the GNU linker
> didn't allow auto-import on PE/COFF targets way back when.  The problem
> is, the dllexport attributes collide with the definitions in the various
> source files in OpenSSH, which obviousy define the variables without
> declspec(dllimport).  The least intrusive way to get rid of these
> warnings is to disable warnings for GCC compiler attributes.
[...]
> +       OSSH_CHECK_CFLAG_COMPILE([-Wno-attributes])

committed, but in the cygwin-specific section.

> The definition of USE_PIPES in session.c collides with the
> definition in config.h:
[...]

committed upstream.

> Cygwin-only:   error: unused variable ‘old_uid’ [-Werror=unused-variable]
>                error: unused variable ‘old_gid’ [-Werror=unused-variable]

committed.

> Cygwin-only: Missing function declarations because a couple of months
> ago we removed `#include <windows.h> from openbsd-compat/bsd-cygwin_util.h.
> The problem:  The function declarations are only enabled in the system
> header, if windows.h is included.  Duh.

committed.

I'm still looking at the rest.

-- 
Darren Tucker (dtucker at zip.com.au)
GPG key 8FF4FA69 / D9A3 86E9 7EEE AF4B B2D4  37C9 C982 80C7 8FF4 FA69
    Good judgement comes with experience. Unfortunately, the experience
usually comes from bad judgement.


More information about the openssh-unix-dev mailing list