-2007-09-05 07:16 +0000 Rocco Rutte <pdmef@gmx.net> (964658b145df)
+2007-09-06 20:13 +0200 Rocco Rutte <pdmef@gmx.net> (648ad3832e82)
+
+ * muttlib.c: Rewrite padding logic for mutt_FormatString()
+
+ Do so by checking columns and bytes individually to make sure we
+ really don't write past the end of allocated buffers. This patch
+ fixes all my crashes I saw with files attached to/with the settings
+ for #2882 and #2900.
+
+2007-09-05 10:52 +0000 Rocco Rutte <pdmef@gmx.net> (078744e84667)
+
+ * init.c, pattern.c: Fix/improve intl error messages
* browser.c: Interpret relative paths in browser relative to shown
dir, not working dir (closes #2471).
-2007-09-05 07:12 +0000 Rocco Rutte <pdmef@gmx.net> (e0c7b3a70c3e)
-
* help.c, pager.c, pager.h: Teach pager how to ignore $wrap and use it
for help (closes #2896).
-2007-09-05 07:07 +0000 Rocco Rutte <pdmef@gmx.net> (dc54d31493a2)
-
* doc/manual.xml.head: Manual: make sure <screen/> contents in shorter
than 80 chars
Otherwise conversion to plain text may cause line breaks rendering
examples syntacially invalid (closes #2185).
-2007-09-05 07:03 +0000 Rocco Rutte <pdmef@gmx.net> (3f59f7dd2965)
-
* doc/manual.xml.head: Manual: don't use <screen/> to present
structured data
-2007-09-05 06:56 +0000 Rocco Rutte <pdmef@gmx.net> (bb4f47b4578d)
-
* muttlib.c: Fix buffer overflow in mutt_FormatString()
The variable in question is supposed to track string sizes, not
2007-09-04 17:22 -0700 Brendan Cully <brendan@kublai.com> (7df563e4b7fd)
- * ChangeLog, configure.ac: Add libz to crypto libs if available
+ * configure.ac: Add libz to crypto libs if available
(closes #2303).
2007-09-04 12:06 -0700 Ivan Vilata i Balaguer <ivan@selidor.net> (d9a6b3f8a492)
fi])
dnl -- start cache --
-AC_ARG_ENABLE(hcache, AC_HELP_STRING([--enable-hcache], [Enable header caching]),
-[if test x$enableval = xyes; then
+use_qdbm=no
+AC_ARG_ENABLE(hcache, AC_HELP_STRING([--enable-hcache],
+ [Enable header caching]))
+AC_ARG_WITH(qdbm, AC_HELP_STRING([--without-qdbm],
+ [Don't use qdbm even if it is available]))
+AC_ARG_WITH(gdbm, AC_HELP_STRING([--without-gdbm],
+ [Don't use gdbm even if it is available]))
+AC_ARG_WITH(bdb, AC_HELP_STRING([--with-bdb[=DIR]],
+ [Use BerkeleyDB4 if gdbm is not available]), ac_bdb_prefix=$withval)
+
+if test x$enable_hcache = xyes
+then
AC_DEFINE(USE_HCACHE, 1, [Enable header caching])
MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS hcache.o"
OLDCPPFLAGS="$CPPFLAGS"
+ OLDLDFLAGS="$LDFLAGS"
OLDLIBS="$LIBS"
need_md5="yes"
dnl hcachever.sh tool for calculating struct digest
AC_CHECK_PROGS([MD5], [md5 md5sum openssl], [none])
- use_qdbm=no
- AC_ARG_WITH(qdbm, AC_HELP_STRING([--without-qdbm], [Don't use qdbm even if it is available]))
+ dnl -- QDBM --
if test "$with_qdbm" != "no"
then
if test -n "$with_qdbm" && test "$with_qdbm" != "yes"
saved_LIBS="$LIBS"
AC_CHECK_HEADERS(villa.h)
- AC_CHECK_LIB(qdbm, vlopen, [MUTTLIBS="$MUTTLIBS -lqdbm"; use_qdbm=yes])
+ AC_CHECK_LIB(qdbm, vlopen,
+ [MUTTLIBS="$MUTTLIBS -lqdbm"
+ AC_DEFINE(HAVE_QDBM, 1, [QDBM Support])
+ use_qdbm=yes],
+ [CPPFLAGS="$OLDCPPFLAGS"
+ LDFLAGS="$OLDLDFLAGS"])
LIBS="$saved_LIBS"
if test -n "$with_qdbm" && test "$use_qdbm" != yes
then
fi
fi
- AC_ARG_WITH(gdbm, AC_HELP_STRING([--without-gdbm], [Don't use gdbm even if it is available]))
- if test x$with_gdbm != xno && test $use_qdbm != yes; then
+ dnl -- GDBM --
+ if test x$with_gdbm != xno && test $use_qdbm != yes
+ then
if test "$with_gdbm" != "yes"
then
CPPFLAGS="$CPPFLAGS -I$with_gdbm/include"
LDFLAGS="$LDFLAGS -L$with_gdbm/lib"
fi
- CPPFLAGS="$OLDCPPFLAGS"
- LIBS="$OLDLIBS -lgdbm";
+ saved_LIBS="$LIBS"
+ LIBS="$LIBS -lgdbm"
AC_CACHE_CHECK(for gdbm_open, ac_cv_gdbmopen,[
ac_cv_gdbmopen=no
AC_TRY_LINK([#include <gdbm.h>],[gdbm_open(0,0,0,0,0);],[ac_cv_gdbmopen=yes])
])
+ LIBS="$saved_LIBS"
+ if test "$ac_cv_gdbmopen" = yes
+ then
+ AC_DEFINE(HAVE_GDBM, 1, [GDBM Support])
+ MUTTLIBS="$MUTTLIBS -lgdbm"
+ elif test -n "$with_gdbm"
+ then
+ AC_MSG_ERROR([GDBM could not be used. Check config.log for details.])
+ fi
fi
+ dnl -- BDB --
ac_bdb_prefix=yes
- AC_ARG_WITH(bdb, AC_HELP_STRING([--with-bdb[=DIR]], [Use BerkeleyDB4 if gdbm is not available]),
- ac_bdb_prefix=$withval)
if test x$ac_bdb_prefix != xno && test x$ac_cv_gdbmopen != xyes && test $use_qdbm != yes; then
test x$ac_bdb_prefix = xyes && ac_bdb_prefix="$mutt_cv_prefix /opt/csw/bdb4 /opt /usr/local /usr"
for d in $ac_bdb_prefix; do
done
test x$BDB_LIB != x && break
done
- if test x$ac_cv_dbcreate = xyes; then
+ if test x$ac_cv_dbcreate = xyes
+ then
AC_MSG_RESULT(yes)
+ CPPFLAGS="$OLDCPPFLAGS -I$BDB_INCLUDE_DIR"
+ LIBS="$OLDLIBS -L$BDB_LIB_DIR -l$BDB_LIB"
+ AC_DEFINE(HAVE_DB4, 1, [Berkeley DB4 Support])
else
AC_MSG_RESULT(no)
fi
fi
- if test "$use_qdbm" = yes; then
- AC_DEFINE(HAVE_QDBM, 1, [QDBM Support])
- elif test x$ac_cv_gdbmopen = xyes; then
- CPPFLAGS="$OLDCPPFLAGS"
- LIBS="$OLDLIBS -lgdbm";
- AC_DEFINE(HAVE_GDBM, 1, [GDBM Support])
- elif test x$ac_cv_dbcreate = xyes; then
- CPPFLAGS="$OLDCPPFLAGS -I$BDB_INCLUDE_DIR"
- LIBS="$OLDLIBS -L$BDB_LIB_DIR -l$BDB_LIB"
- AC_DEFINE(HAVE_DB4, 1, [Berkeley DB4 Support])
- else
+ if test x$use_qdbm != xyes && test x$ac_cv_gdbmopen != xyes && test x$ac_cv_dbcreate != xyes
+ then
AC_MSG_ERROR([You need QDBM, GDBM or Berkeley DB4 for hcache])
fi
-fi])
+fi
dnl -- end cache --
if test "$need_md5" = "yes"