Commit 9fa73003 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Remove dmalloc support; closes #26426

Dmalloc hasn't seen a release in over a decade, and there are much
better tools to use these days.
parent e4e949e9
Loading
Loading
Loading
Loading

changes/ticket26426

0 → 100644
+4 −0
Original line number Diff line number Diff line
  o Removed features:
    - Tor no longer supports building with the dmalloc library. For debugging
      memory issues, we suggest using gperftools or msan instead.
      Closes ticket 26426.
+0 −20
Original line number Diff line number Diff line
@@ -1726,26 +1726,6 @@ if test "$tor_cv_uint8_uchar" = "no"; then
  AC_MSG_ERROR([We assume that uint8_t is the same type as unsigned char, but your compiler disagrees.])
fi

# Whether we should use the dmalloc memory allocation debugging library.
AC_MSG_CHECKING(whether to use dmalloc (debug memory allocation library))
AC_ARG_WITH(dmalloc,
AS_HELP_STRING(--with-dmalloc, [use debug memory allocation library]),
[if [[ "$withval" = "yes" ]]; then
  dmalloc=1
  AC_MSG_RESULT(yes)
else
  dmalloc=1
  AC_MSG_RESULT(no)
fi], [ dmalloc=0; AC_MSG_RESULT(no) ]
)

if [[ $dmalloc -eq 1 ]]; then
  AC_CHECK_HEADERS(dmalloc.h, , AC_MSG_ERROR(dmalloc header file not found. Do you have the development files for dmalloc installed?))
  AC_SEARCH_LIBS(dmalloc_malloc, [dmallocth dmalloc], , AC_MSG_ERROR(Libdmalloc library not found. If you enable it you better have it installed.))
  AC_DEFINE(USE_DMALLOC, 1, [Debug memory allocation library])
  AC_CHECK_FUNCS(dmalloc_strdup dmalloc_strndup)
fi

AC_ARG_WITH(tcmalloc,
AS_HELP_STRING(--with-tcmalloc, [use tcmalloc memory allocation library]),
[ tcmalloc=yes ], [ tcmalloc=no ])
+0 −10
Original line number Diff line number Diff line
@@ -25,16 +25,6 @@ Jenkins

    https://jenkins.torproject.org

Dmalloc
-------

The dmalloc library will keep track of memory allocation, so you can find out
if we're leaking memory, doing any double-frees, or so on.

    dmalloc -l -/dmalloc.log
    (run the commands it tells you)
    ./configure --with-dmalloc

Valgrind
--------

+0 −13
Original line number Diff line number Diff line
@@ -506,16 +506,3 @@ crypto_global_cleanup(void)
}

/** @} */

#ifdef USE_DMALLOC
/** Tell the crypto library to use Tor's allocation functions rather than
 * calling libc's allocation functions directly. Return 0 on success, -1
 * on failure. */
int
crypto_use_tor_alloc_functions(void)
{
  int r = CRYPTO_set_mem_ex_functions(tor_malloc_, tor_realloc_, tor_free_);
  return r ? 0 : -1;
}
#endif /* defined(USE_DMALLOC) */
+0 −4
Original line number Diff line number Diff line
@@ -40,9 +40,6 @@ int crypto_early_init(void) ATTR_WUR;
int crypto_global_init(int hardwareAccel,
                       const char *accelName,
                       const char *accelPath) ATTR_WUR;
#ifdef USE_DMALLOC
int crypto_use_tor_alloc_functions(void);
#endif

void crypto_thread_cleanup(void);
int crypto_global_cleanup(void);
@@ -77,4 +74,3 @@ int crypto_cipher_decrypt_with_iv(const char *key,
void crypto_add_spaces_to_fp(char *out, size_t outlen, const char *in);

#endif /* !defined(TOR_CRYPTO_H) */
Loading