From 4f40209aa4060b9c066a2f0d9332ace7b8dfb391 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Sun, 20 Apr 2014 13:21:22 +1000 Subject: - djm@cvs.openbsd.org 2014/03/26 04:55:35 [chacha.h cipher-chachapoly.h digest.h hmac.h kex.h kexc25519.c [misc.h poly1305.h ssh-pkcs11.c] use __bounded(...) attribute recently added to sys/cdefs.h instead of longform __attribute__(__bounded(...)); for brevity and a warning free compilation with llvm/clang --- defines.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'defines.h') diff --git a/defines.h b/defines.h index 354d5b614..41861fbba 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.176 2014/01/17 13:12:38 dtucker Exp $ */ +/* $Id: defines.h,v 1.177 2014/04/20 03:21:23 djm Exp $ */ /* Constants */ @@ -826,4 +826,14 @@ struct winsize { # define arc4random_stir() #endif +/* __bounded macro */ +#ifndef __bounded +# if __GNUC_PREREQ__(3,3) && !defined(__clang__) +# define __bounded(args) __attribute__ ((__bounded__ args )) +# else +# define __bounded(args) /* delete */ +# endif /* __GNUC_PREREQ__(3,3) && !defined(__clang__) */ +#endif + + #endif /* _DEFINES_H */ -- cgit v1.2.3 From f028460d0b2e5a584355321015cde69bf6fd933e Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Thu, 1 May 2014 02:24:35 +1000 Subject: - (dtucker) [defines.h] Define __GNUC_PREREQ__ macro if we don't already have it. Only attempt to use __attribute__(__bounded__) for gcc. --- ChangeLog | 4 ++++ defines.h | 12 ++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index 541db38c4..7bff5fba7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20140430 + - (dtucker) [defines.h] Define __GNUC_PREREQ__ macro if we don't already + have it. Only attempt to use __attribute__(__bounded__) for gcc. + 20140420 - OpenBSD CVS Sync - djm@cvs.openbsd.org 2014/03/03 22:22:30 diff --git a/defines.h b/defines.h index 41861fbba..928bd9b01 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.177 2014/04/20 03:21:23 djm Exp $ */ +/* $Id: defines.h,v 1.178 2014/04/30 16:24:35 dtucker Exp $ */ /* Constants */ @@ -826,9 +826,17 @@ struct winsize { # define arc4random_stir() #endif +/* Macro to test if we're using a specific version of gcc or later. */ +#if defined(__GNUC__) && !defined(__GNUC_PREREQ__) +#define __GNUC_PREREQ__(ma, mi) \ + ((__GNUC__ > (ma)) || (__GNUC__ == (ma) && __GNUC_MINOR__ >= (mi))) +#else +#define __GNUC_PREREQ__(ma, mi) 0 +#endif + /* __bounded macro */ #ifndef __bounded -# if __GNUC_PREREQ__(3,3) && !defined(__clang__) +# if defined(__GNUC__) && __GNUC_PREREQ__(3,3) && !defined(__clang__) # define __bounded(args) __attribute__ ((__bounded__ args )) # else # define __bounded(args) /* delete */ -- cgit v1.2.3 From 686c7d9ee6f44b2be4128d7860b6b37adaeba733 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Thu, 15 May 2014 14:37:03 +1000 Subject: - djm@cvs.openbsd.org 2014/05/02 03:27:54 [chacha.h cipher-chachapoly.h digest.h hmac.h kex.h kexc25519.c] [misc.h poly1305.h ssh-pkcs11.c defines.h] revert __bounded change; it causes way more problems for portable than it solves; pointed out by dtucker@ --- ChangeLog | 5 +++++ chacha.h | 12 ++++++------ cipher-chachapoly.h | 6 +++--- defines.h | 20 +------------------- digest.h | 12 ++++++------ hmac.h | 8 ++++---- kex.h | 10 +++++----- kexc25519.c | 8 ++++---- misc.h | 18 +++++++++--------- poly1305.h | 8 ++++---- ssh-pkcs11.c | 4 ++-- 11 files changed, 49 insertions(+), 62 deletions(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index eb4fac66d..486ed9c5c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -71,6 +71,11 @@ UMAC can use our local fallback implementation of AES when OpenSSL isn't available. Glue code straight from Ted Krovetz's original umac.c. ok markus@ + - djm@cvs.openbsd.org 2014/05/02 03:27:54 + [chacha.h cipher-chachapoly.h digest.h hmac.h kex.h kexc25519.c] + [misc.h poly1305.h ssh-pkcs11.c defines.h] + revert __bounded change; it causes way more problems for portable than + it solves; pointed out by dtucker@ 20140430 - (dtucker) [defines.h] Define __GNUC_PREREQ__ macro if we don't already diff --git a/chacha.h b/chacha.h index ea57fe179..40eaf2d90 100644 --- a/chacha.h +++ b/chacha.h @@ -1,4 +1,4 @@ -/* $OpenBSD: chacha.h,v 1.2 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: chacha.h,v 1.3 2014/05/02 03:27:54 djm Exp $ */ /* chacha-merged.c version 20080118 @@ -22,14 +22,14 @@ struct chacha_ctx { #define CHACHA_BLOCKLEN 64 void chacha_keysetup(struct chacha_ctx *x, const u_char *k, u_int kbits) - __bounded((__minbytes__, 2, CHACHA_MINKEYLEN)); + __attribute__((__bounded__(__minbytes__, 2, CHACHA_MINKEYLEN))); void chacha_ivsetup(struct chacha_ctx *x, const u_char *iv, const u_char *ctr) - __bounded((__minbytes__, 2, CHACHA_NONCELEN)) - __bounded((__minbytes__, 3, CHACHA_CTRLEN)); + __attribute__((__bounded__(__minbytes__, 2, CHACHA_NONCELEN))) + __attribute__((__bounded__(__minbytes__, 3, CHACHA_CTRLEN))); void chacha_encrypt_bytes(struct chacha_ctx *x, const u_char *m, u_char *c, u_int bytes) - __bounded((__buffer__, 2, 4)) - __bounded((__buffer__, 3, 4)); + __attribute__((__bounded__(__buffer__, 2, 4))) + __attribute__((__bounded__(__buffer__, 3, 4))); #endif /* CHACHA_H */ diff --git a/cipher-chachapoly.h b/cipher-chachapoly.h index 35326b9a3..7948dcdcd 100644 --- a/cipher-chachapoly.h +++ b/cipher-chachapoly.h @@ -1,4 +1,4 @@ -/* $OpenBSD: cipher-chachapoly.h,v 1.2 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: cipher-chachapoly.h,v 1.3 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) Damien Miller 2013 @@ -30,12 +30,12 @@ struct chachapoly_ctx { void chachapoly_init(struct chachapoly_ctx *cpctx, const u_char *key, u_int keylen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); int chachapoly_crypt(struct chachapoly_ctx *cpctx, u_int seqnr, u_char *dest, const u_char *src, u_int len, u_int aadlen, u_int authlen, int do_encrypt); int chachapoly_get_length(struct chachapoly_ctx *cpctx, u_int *plenp, u_int seqnr, const u_char *cp, u_int len) - __bounded((__buffer__, 4, 5)); + __attribute__((__bounded__(__buffer__, 4, 5))); #endif /* CHACHA_POLY_AEAD_H */ diff --git a/defines.h b/defines.h index 928bd9b01..9e383020b 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.178 2014/04/30 16:24:35 dtucker Exp $ */ +/* $Id: defines.h,v 1.179 2014/05/15 04:37:04 djm Exp $ */ /* Constants */ @@ -826,22 +826,4 @@ struct winsize { # define arc4random_stir() #endif -/* Macro to test if we're using a specific version of gcc or later. */ -#if defined(__GNUC__) && !defined(__GNUC_PREREQ__) -#define __GNUC_PREREQ__(ma, mi) \ - ((__GNUC__ > (ma)) || (__GNUC__ == (ma) && __GNUC_MINOR__ >= (mi))) -#else -#define __GNUC_PREREQ__(ma, mi) 0 -#endif - -/* __bounded macro */ -#ifndef __bounded -# if defined(__GNUC__) && __GNUC_PREREQ__(3,3) && !defined(__clang__) -# define __bounded(args) __attribute__ ((__bounded__ args )) -# else -# define __bounded(args) /* delete */ -# endif /* __GNUC_PREREQ__(3,3) && !defined(__clang__) */ -#endif - - #endif /* _DEFINES_H */ diff --git a/digest.h b/digest.h index 0edd0a785..04295e277 100644 --- a/digest.h +++ b/digest.h @@ -1,4 +1,4 @@ -/* $OpenBSD: digest.h,v 1.3 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: digest.h,v 1.4 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) 2013 Damien Miller * @@ -45,18 +45,18 @@ int ssh_digest_copy_state(struct ssh_digest_ctx *from, /* One-shot API */ int ssh_digest_memory(int alg, const void *m, size_t mlen, u_char *d, size_t dlen) - __bounded((__buffer__, 2, 3)) - __bounded((__buffer__, 4, 5)); + __attribute__((__bounded__(__buffer__, 2, 3))) + __attribute__((__bounded__(__buffer__, 4, 5))); int ssh_digest_buffer(int alg, const Buffer *b, u_char *d, size_t dlen) - __bounded((__buffer__, 3, 4)); + __attribute__((__bounded__(__buffer__, 3, 4))); /* Update API */ struct ssh_digest_ctx *ssh_digest_start(int alg); int ssh_digest_update(struct ssh_digest_ctx *ctx, const void *m, size_t mlen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); int ssh_digest_update_buffer(struct ssh_digest_ctx *ctx, const Buffer *b); int ssh_digest_final(struct ssh_digest_ctx *ctx, u_char *d, size_t dlen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); void ssh_digest_free(struct ssh_digest_ctx *ctx); #endif /* _DIGEST_H */ diff --git a/hmac.h b/hmac.h index 9eddbe243..05813906e 100644 --- a/hmac.h +++ b/hmac.h @@ -1,4 +1,4 @@ -/* $OpenBSD: hmac.h,v 1.7 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: hmac.h,v 1.8 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) 2014 Markus Friedl. All rights reserved. * @@ -26,12 +26,12 @@ struct ssh_hmac_ctx *ssh_hmac_start(int alg); /* Sets the state of the HMAC or resets the state if key == NULL */ int ssh_hmac_init(struct ssh_hmac_ctx *ctx, const void *key, size_t klen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); int ssh_hmac_update(struct ssh_hmac_ctx *ctx, const void *m, size_t mlen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); int ssh_hmac_update_buffer(struct ssh_hmac_ctx *ctx, const Buffer *b); int ssh_hmac_final(struct ssh_hmac_ctx *ctx, u_char *d, size_t dlen) - __bounded((__buffer__, 2, 3)); + __attribute__((__bounded__(__buffer__, 2, 3))); void ssh_hmac_free(struct ssh_hmac_ctx *ctx); #endif /* _HMAC_H */ diff --git a/kex.h b/kex.h index 2229ae3d5..4c40ec851 100644 --- a/kex.h +++ b/kex.h @@ -1,4 +1,4 @@ -/* $OpenBSD: kex.h,v 1.63 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: kex.h,v 1.64 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. @@ -187,12 +187,12 @@ kex_c25519_hash(int, char *, char *, char *, int, #define CURVE25519_SIZE 32 void kexc25519_keygen(u_char[CURVE25519_SIZE], u_char[CURVE25519_SIZE]) - __bounded((__minbytes__, 1, CURVE25519_SIZE)) - __bounded((__minbytes__, 2, CURVE25519_SIZE)); + __attribute__((__bounded__(__minbytes__, 1, CURVE25519_SIZE))) + __attribute__((__bounded__(__minbytes__, 2, CURVE25519_SIZE))); void kexc25519_shared_key(const u_char key[CURVE25519_SIZE], const u_char pub[CURVE25519_SIZE], Buffer *out) - __bounded((__minbytes__, 1, CURVE25519_SIZE)) - __bounded((__minbytes__, 2, CURVE25519_SIZE)); + __attribute__((__bounded__(__minbytes__, 1, CURVE25519_SIZE))) + __attribute__((__bounded__(__minbytes__, 2, CURVE25519_SIZE))); void derive_ssh1_session_id(BIGNUM *, BIGNUM *, u_int8_t[8], u_int8_t[16]); diff --git a/kexc25519.c b/kexc25519.c index 4dc842c44..e3afa0055 100644 --- a/kexc25519.c +++ b/kexc25519.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kexc25519.c,v 1.6 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: kexc25519.c,v 1.7 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) 2001, 2013 Markus Friedl. All rights reserved. * Copyright (c) 2010 Damien Miller. All rights reserved. @@ -45,9 +45,9 @@ extern int crypto_scalarmult_curve25519(u_char a[CURVE25519_SIZE], const u_char b[CURVE25519_SIZE], const u_char c[CURVE25519_SIZE]) - __bounded((__minbytes__, 1, CURVE25519_SIZE)) - __bounded((__minbytes__, 2, CURVE25519_SIZE)) - __bounded((__minbytes__, 3, CURVE25519_SIZE)); + __attribute__((__bounded__(__minbytes__, 1, CURVE25519_SIZE))) + __attribute__((__bounded__(__minbytes__, 2, CURVE25519_SIZE))) + __attribute__((__bounded__(__minbytes__, 3, CURVE25519_SIZE))); void kexc25519_keygen(u_char key[CURVE25519_SIZE], u_char pub[CURVE25519_SIZE]) diff --git a/misc.h b/misc.h index 309d4ec17..7b0c503a3 100644 --- a/misc.h +++ b/misc.h @@ -1,4 +1,4 @@ -/* $OpenBSD: misc.h,v 1.52 2014/04/20 02:30:25 djm Exp $ */ +/* $OpenBSD: misc.h,v 1.53 2014/05/02 03:27:54 djm Exp $ */ /* * Author: Tatu Ylonen @@ -70,23 +70,23 @@ int tun_open(int, int); /* Functions to extract or store big-endian words of various sizes */ u_int64_t get_u64(const void *) - __bounded(( __minbytes__, 1, 8)); + __attribute__((__bounded__( __minbytes__, 1, 8))); u_int32_t get_u32(const void *) - __bounded(( __minbytes__, 1, 4)); + __attribute__((__bounded__( __minbytes__, 1, 4))); u_int16_t get_u16(const void *) - __bounded(( __minbytes__, 1, 2)); + __attribute__((__bounded__( __minbytes__, 1, 2))); void put_u64(void *, u_int64_t) - __bounded(( __minbytes__, 1, 8)); + __attribute__((__bounded__( __minbytes__, 1, 8))); void put_u32(void *, u_int32_t) - __bounded(( __minbytes__, 1, 4)); + __attribute__((__bounded__( __minbytes__, 1, 4))); void put_u16(void *, u_int16_t) - __bounded(( __minbytes__, 1, 2)); + __attribute__((__bounded__( __minbytes__, 1, 2))); /* Little-endian store/load, used by umac.c */ u_int32_t get_u32_le(const void *) - __bounded(( __minbytes__, 1, 4)); + __attribute__((__bounded__(__minbytes__, 1, 4))); void put_u32_le(void *, u_int32_t) - __bounded(( __minbytes__, 1, 4)); + __attribute__((__bounded__(__minbytes__, 1, 4))); struct bwlimit { size_t buflen; diff --git a/poly1305.h b/poly1305.h index 82373e6af..f7db5f8d7 100644 --- a/poly1305.h +++ b/poly1305.h @@ -1,4 +1,4 @@ -/* $OpenBSD: poly1305.h,v 1.3 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: poly1305.h,v 1.4 2014/05/02 03:27:54 djm Exp $ */ /* * Public Domain poly1305 from Andrew Moon @@ -15,8 +15,8 @@ void poly1305_auth(u_char out[POLY1305_TAGLEN], const u_char *m, size_t inlen, const u_char key[POLY1305_KEYLEN]) - __bounded((__minbytes__, 1, POLY1305_TAGLEN)) - __bounded((__buffer__, 2, 3)) - __bounded((__minbytes__, 4, POLY1305_KEYLEN)); + __attribute__((__bounded__(__minbytes__, 1, POLY1305_TAGLEN))) + __attribute__((__bounded__(__buffer__, 2, 3))) + __attribute__((__bounded__(__minbytes__, 4, POLY1305_KEYLEN))); #endif /* POLY1305_H */ diff --git a/ssh-pkcs11.c b/ssh-pkcs11.c index ed5268c12..d3e877291 100644 --- a/ssh-pkcs11.c +++ b/ssh-pkcs11.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ssh-pkcs11.c,v 1.12 2014/03/26 04:55:35 djm Exp $ */ +/* $OpenBSD: ssh-pkcs11.c,v 1.13 2014/05/02 03:27:54 djm Exp $ */ /* * Copyright (c) 2010 Markus Friedl. All rights reserved. * @@ -386,7 +386,7 @@ pkcs11_open_session(struct pkcs11_provider *p, CK_ULONG slotidx, char *pin) */ static int pkcs11_fetch_keys_filter(struct pkcs11_provider *, CK_ULONG, CK_ATTRIBUTE [], CK_ATTRIBUTE [3], Key ***, int *) - __bounded((__minbytes__,4, 3 * sizeof(CK_ATTRIBUTE))); + __attribute__((__bounded__(__minbytes__,4, 3 * sizeof(CK_ATTRIBUTE)))); static int pkcs11_fetch_keys(struct pkcs11_provider *p, CK_ULONG slotidx, -- cgit v1.2.3 From 18912775cb97c0b1e75e838d3c7d4b56648137b5 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Wed, 21 May 2014 17:06:46 +1000 Subject: - (djm) [commit configure.ac defines.h sshpty.c] don't attempt to use vhangup on Linux. It doens't work for non-root users, and for them it just messes up the tty settings. --- ChangeLog | 5 +++++ configure.ac | 5 ++--- defines.h | 6 +----- sshpty.c | 13 ------------- 4 files changed, 8 insertions(+), 21 deletions(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index 3d8b9af09..8ad8b1a4e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +20140521 + - (djm) [commit configure.ac defines.h sshpty.c] don't attempt to use + vhangup on Linux. It doens't work for non-root users, and for them + it just messes up the tty settings. + 20140519 - (djm) [rijndael.c rijndael.h] Sync with newly-ressurected versions ine OpenBSD diff --git a/configure.ac b/configure.ac index 058cfd090..7a89b57e6 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -# $Id: configure.ac,v 1.573 2014/05/15 04:58:08 djm Exp $ +# $Id: configure.ac,v 1.574 2014/05/21 07:06:47 djm Exp $ # # Copyright (c) 1999-2004 Damien Miller # @@ -15,7 +15,7 @@ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. AC_INIT([OpenSSH], [Portable], [openssh-unix-dev@mindrot.org]) -AC_REVISION($Revision: 1.573 $) +AC_REVISION($Revision: 1.574 $) AC_CONFIG_SRCDIR([ssh.c]) AC_LANG([C]) @@ -1736,7 +1736,6 @@ AC_CHECK_FUNCS([ \ user_from_uid \ usleep \ vasprintf \ - vhangup \ vsnprintf \ waitpid \ ]) diff --git a/defines.h b/defines.h index 9e383020b..b3df1e230 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.179 2014/05/15 04:37:04 djm Exp $ */ +/* $Id: defines.h,v 1.180 2014/05/21 07:06:47 djm Exp $ */ /* Constants */ @@ -603,10 +603,6 @@ struct winsize { # define memmove(s1, s2, n) bcopy((s2), (s1), (n)) #endif /* !defined(HAVE_MEMMOVE) && defined(HAVE_BCOPY) */ -#if defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX) -# define USE_VHANGUP -#endif /* defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX) */ - #ifndef GETPGRP_VOID # include # define getpgrp() getpgrp(0) diff --git a/sshpty.c b/sshpty.c index bbbc0fefe..a2059b76d 100644 --- a/sshpty.c +++ b/sshpty.c @@ -99,9 +99,6 @@ void pty_make_controlling_tty(int *ttyfd, const char *tty) { int fd; -#ifdef USE_VHANGUP - void *old; -#endif /* USE_VHANGUP */ #ifdef _UNICOS if (setsid() < 0) @@ -157,21 +154,11 @@ pty_make_controlling_tty(int *ttyfd, const char *tty) if (setpgrp(0,0) < 0) error("SETPGRP %s",strerror(errno)); #endif /* NEED_SETPGRP */ -#ifdef USE_VHANGUP - old = signal(SIGHUP, SIG_IGN); - vhangup(); - signal(SIGHUP, old); -#endif /* USE_VHANGUP */ fd = open(tty, O_RDWR); if (fd < 0) { error("%.100s: %.100s", tty, strerror(errno)); } else { -#ifdef USE_VHANGUP - close(*ttyfd); - *ttyfd = fd; -#else /* USE_VHANGUP */ close(fd); -#endif /* USE_VHANGUP */ } /* Verify that we now have a controlling tty. */ fd = open(_PATH_TTY, O_WRONLY); -- cgit v1.2.3 From cf5392c2db2bb1dbef9818511d34056404436109 Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Thu, 12 Jun 2014 05:22:49 +1000 Subject: - (dtucker) [defines.h] Add va_copy if we don't already have it, taken from openbsd-compat/bsd-asprintf.c. --- ChangeLog | 4 ++++ defines.h | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index 00c8b2775..9c3f6543f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20140611 + - (dtucker) [defines.h] Add va_copy if we don't already have it, taken from + openbsd-compat/bsd-asprintf.c. + 20140610 - (dtucker) [regress/unittests/sshbuf/test_sshbuf_getput_crypto.c regress/unittests/sshbuf/test_sshbuf_getput_fuzz.c] Only do NISTP256 diff --git a/defines.h b/defines.h index b3df1e230..46f18d342 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.180 2014/05/21 07:06:47 djm Exp $ */ +/* $Id: defines.h,v 1.181 2014/06/11 19:22:50 dtucker Exp $ */ /* Constants */ @@ -822,4 +822,12 @@ struct winsize { # define arc4random_stir() #endif +#ifndef HAVE_VA_COPY +# ifdef HAVE___VA_COPY +# define va_copy(dest, src) __va_copy(dest, src) +# else +# define va_copy(dest, src) (dest) = (src) +# endif +#endif + #endif /* _DEFINES_H */ -- cgit v1.2.3 From af665bb7b092a59104db1e65577851cf35b86e32 Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Mon, 16 Jun 2014 22:50:55 +1000 Subject: - (dtucker) [defines.h] Fix undef of _PATH_MAILDIR. From rak at debian via OpenSMTPD and chl@ --- ChangeLog | 4 ++++ defines.h | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index f4c6ea6bd..b8b3c0158 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20140616 + - (dtucker) [defines.h] Fix undef of _PATH_MAILDIR. From rak at debian via + OpenSMTPD and chl@ + 20140612 - (dtucker) [configure.ac] Remove tcpwrappers support, support has already been removed from sshd.c. diff --git a/defines.h b/defines.h index 46f18d342..f1deafa61 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.181 2014/06/11 19:22:50 dtucker Exp $ */ +/* $Id: defines.h,v 1.182 2014/06/16 12:50:56 dtucker Exp $ */ /* Constants */ @@ -405,7 +405,7 @@ struct winsize { /* user may have set a different path */ #if defined(_PATH_MAILDIR) && defined(MAIL_DIRECTORY) -# undef _PATH_MAILDIR MAILDIR +# undef _PATH_MAILDIR #endif /* defined(_PATH_MAILDIR) && defined(MAIL_DIRECTORY) */ #ifdef MAIL_DIRECTORY -- cgit v1.2.3 From 23f269562b7537b2f6f5014e50a25e5dcc55a837 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Wed, 3 Sep 2014 05:33:25 +1000 Subject: - (djm) [defines.h sshbuf.c] Move __predict_true|false to defines.h and conditionalise to avoid duplicate definition. --- ChangeLog | 4 ++++ defines.h | 13 ++++++++++++- sshbuf.c | 10 ---------- 3 files changed, 16 insertions(+), 11 deletions(-) (limited to 'defines.h') diff --git a/ChangeLog b/ChangeLog index 97eb0a8c2..128368da4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20140903 + - (djm) [defines.h sshbuf.c] Move __predict_true|false to defines.h and + conditionalise to avoid duplicate definition. + 20140830 - (djm) [openbsd-compat/openssl-compat.h] add OPENSSL_[RD]SA_MAX_MODULUS_BITS defines for OpenSSL that lacks them diff --git a/defines.h b/defines.h index f1deafa61..3ac8be987 100644 --- a/defines.h +++ b/defines.h @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.182 2014/06/16 12:50:56 dtucker Exp $ */ +/* $Id: defines.h,v 1.183 2014/09/02 19:33:26 djm Exp $ */ /* Constants */ @@ -830,4 +830,15 @@ struct winsize { # endif #endif +#ifndef __predict_true +# if defined(__GNUC__) && \ + ((__GNUC__ > (2)) || (__GNUC__ == (2) && __GNUC_MINOR__ >= (96))) +# define __predict_true(exp) __builtin_expect(((exp) != 0), 1) +# define __predict_false(exp) __builtin_expect(((exp) != 0), 0) +# else +# define __predict_true(exp) ((exp) != 0) +# define __predict_false(exp) ((exp) != 0) +# endif /* gcc version */ +#endif /* __predict_true */ + #endif /* _DEFINES_H */ diff --git a/sshbuf.c b/sshbuf.c index 5df7c9f46..78f5340a1 100644 --- a/sshbuf.c +++ b/sshbuf.c @@ -28,16 +28,6 @@ #include "ssherr.h" #include "sshbuf.h" -/* XXX move to defines.h? */ -#if defined(__GNUC__) && \ - ((__GNUC__ > (2)) || (__GNUC__ == (2) && __GNUC_MINOR__ >= (96))) -#define __predict_true(exp) __builtin_expect(((exp) != 0), 1) -#define __predict_false(exp) __builtin_expect(((exp) != 0), 0) -#else -#define __predict_true(exp) ((exp) != 0) -#define __predict_false(exp) ((exp) != 0) -#endif - static inline int sshbuf_check_sanity(const struct sshbuf *buf) { -- cgit v1.2.3