[tor-commits] [tor/master] Document the alignment limitation of tor_free()
nickm at torproject.org
nickm at torproject.org
Wed Jan 10 18:00:27 UTC 2018
commit 519fa1a3e6943f858b5dc1dee461053af1c187cd
Author: Nick Mathewson <nickm at torproject.org>
Date: Wed Jan 10 09:55:01 2018 -0500
Document the alignment limitation of tor_free()
---
src/common/util.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/common/util.h b/src/common/util.h
index 8dc64ce9f..2ee0ea28c 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -79,6 +79,11 @@ extern int dmalloc_free(const char *file, const int line, void *pnt,
*
* This is a macro. If you need a function pointer to release memory from
* tor_malloc(), use tor_free_().
+ *
+ * Note that this macro takes the address of the pointer it is going to
+ * free and clear. If that pointer is stored with a nonstandard
+ * alignment (eg because of a "packed" pragma) it is not correct to use
+ * tor_free().
*/
#ifdef __GNUC__
#define tor_free(p) STMT_BEGIN \
More information about the tor-commits
mailing list