From 03481aba068e534063f58ffaa4e8c2c060fa6e14 Mon Sep 17 00:00:00 2001 From: Matt Johnston Date: Thu, 4 Mar 2021 21:03:02 +0800 Subject: Define _GNU_SOURCE properly, other header fixes This lets -std=c89 build for gcc 8.4.0 --- cli-authpubkey.c | 2 +- configure.ac | 3 +++ dbmalloc.h | 4 ++-- fuzz.h | 4 ++-- includes.h | 3 --- svr-auth.c | 1 - 6 files changed, 8 insertions(+), 9 deletions(-) diff --git a/cli-authpubkey.c b/cli-authpubkey.c index 42c4e3f..28c54fa 100644 --- a/cli-authpubkey.c +++ b/cli-authpubkey.c @@ -125,7 +125,7 @@ void recv_msg_userauth_pk_ok() { static void cli_buf_put_sign(buffer* buf, sign_key *key, enum signature_type sigtype, const buffer *data_buf) { #if DROPBEAR_CLI_AGENTFWD - // TODO: rsa-sha256 agent + /* TODO: rsa-sha256 agent */ if (key->source == SIGNKEY_SOURCE_AGENT) { /* Format the agent signature ourselves, as buf_put_sign would. */ buffer *sigblob; diff --git a/configure.ac b/configure.ac index 8f552a8..83bb239 100644 --- a/configure.ac +++ b/configure.ac @@ -47,6 +47,9 @@ DB_TRYADDCFLAGS([-Wno-pointer-sign]) AC_MSG_NOTICE([Checking if compiler '$CC' supports -fno-strict-overflow]) DB_TRYADDCFLAGS([-fno-strict-overflow]) +# needed for various extensions. define early before autoconf tests +AC_DEFINE([_GNU_SOURCE], [], [Use GNU extensions if glibc]) + STATIC=0 AC_ARG_ENABLE(static, [ --enable-static Build static binaries], diff --git a/dbmalloc.h b/dbmalloc.h index d5e814e..e5554e8 100644 --- a/dbmalloc.h +++ b/dbmalloc.h @@ -1,9 +1,9 @@ #ifndef DBMALLOC_H_ #define DBMALLOC_H_ -#include "stdint.h" -#include "stdlib.h" #include "options.h" +#include +#include void * m_malloc(size_t size); void * m_calloc(size_t nmemb, size_t size); diff --git a/fuzz.h b/fuzz.h index 4b89e2b..4fc1ce0 100644 --- a/fuzz.h +++ b/fuzz.h @@ -80,7 +80,7 @@ struct dropbear_fuzz_options { int do_jmp; sigjmp_buf jmp; - // write out decrypted session data to this FD if it's set + // write out decrypted session data to this FD if it is set // flag - this needs to be set manually in cli-main.c etc int dumping; // the file descriptor @@ -114,6 +114,6 @@ struct passwd* fuzz_getpwnam(const char *login); #define getpwuid(x) fuzz_getpwuid(x) #endif // FUZZ_NO_REPLACE_GETPW -#endif // DROPBEAR_FUZZ +#endif /* DROPBEAR_FUZZ */ #endif /* DROPBEAR_FUZZ_H */ diff --git a/includes.h b/includes.h index 884ebf7..df1df2d 100644 --- a/includes.h +++ b/includes.h @@ -25,9 +25,6 @@ #ifndef DROPBEAR_INCLUDES_H_ #define DROPBEAR_INCLUDES_H_ -/* uclibc needs _GNU_SOURCE, maybe other things? */ -#define _GNU_SOURCE - #include "options.h" #include "debug.h" diff --git a/svr-auth.c b/svr-auth.c index 443de20..05ac6a9 100644 --- a/svr-auth.c +++ b/svr-auth.c @@ -25,7 +25,6 @@ /* This file (auth.c) handles authentication requests, passing it to the * particular type (auth-passwd, auth-pubkey). */ -#include #include "includes.h" #include "dbutil.h" -- cgit v1.2.3