# HG changeset patch # User Matt Johnston # Date 1498271659 -28800 # Node ID 793c43cf523efdba511ce412e5b0ecf80522c6f5 # Parent 69862e8cc405273606767c98800fb47859ad3f86# Parent 7aebe7da3a35b17ec0b3020b3d41336a0834de78 merge from main diff -r 69862e8cc405 -r 793c43cf523e configure.ac --- a/configure.ac Sat Jun 24 00:47:07 2017 +0800 +++ b/configure.ac Sat Jun 24 10:34:19 2017 +0800 @@ -58,7 +58,15 @@ LDFLAGS="$LDFLAGS $TESTFLAGS" AC_LINK_IFELSE([AC_LANG_PROGRAM([])], [AC_MSG_NOTICE([Setting $TESTFLAGS])], - [AC_MSG_NOTICE([Not setting $TESTFLAGS]); LDFLAGS="$OLDLDFLAGS" ] + [ + LDFLAGS="$OLDLDFLAGS" + TESTFLAGS="-pie" + LDFLAGS="$LDFLAGS $TESTFLAGS" + AC_LINK_IFELSE([AC_LANG_PROGRAM([])], + [AC_MSG_NOTICE([Setting $TESTFLAGS])], + [AC_MSG_NOTICE([Not setting $TESTFLAGS]); LDFLAGS="$OLDLDFLAGS" ] + ) + ] ) # readonly elf relocation sections (relro) OLDLDFLAGS="$LDFLAGS" diff -r 69862e8cc405 -r 793c43cf523e dss.c --- a/dss.c Sat Jun 24 00:47:07 2017 +0800 +++ b/dss.c Sat Jun 24 10:34:19 2017 +0800 @@ -61,16 +61,14 @@ goto out; } - if (mp_count_bits(key->p) < DSS_P_BITS) { + if (mp_count_bits(key->p) != DSS_P_BITS) { dropbear_log(LOG_WARNING, "Bad DSS p"); - TRACE(("leave buf_get_dss_pub_key: short key")) ret = DROPBEAR_FAILURE; goto out; } - if (mp_count_bits(key->q) < DSS_Q_BITS) { + if (mp_count_bits(key->q) != DSS_Q_BITS) { dropbear_log(LOG_WARNING, "Bad DSS q"); - TRACE(("leave buf_get_dss_pub_key: short key")) ret = DROPBEAR_FAILURE; goto out; }