Sfoglia il codice sorgente

Merge branch 'maint-0.2.7'

Nick Mathewson 8 anni fa
parent
commit
a7f303a481
2 ha cambiato i file con 13 aggiunte e 0 eliminazioni
  1. 4 0
      changes/bug14821
  2. 9 0
      src/common/compat.h

+ 4 - 0
changes/bug14821

@@ -0,0 +1,4 @@
+  o Major bugfixes (compilation):
+    - Correctly repair hardened builds under the clang compiler. Previously,
+      our use of _FORTIFY_SOURCE would conflict with clang's address
+      sanitizer. Closes ticket 14821.

+ 9 - 0
src/common/compat.h

@@ -42,6 +42,15 @@
 #include <netinet6/in6.h>
 #endif
 
+#if defined(__has_feature)
+#  if __has_feature(address_sanitizer)
+/* Some of the fancy glibc strcmp() macros include references to memory that
+ * clang rejects because it is off the end of a less-than-3. Clang hates this,
+ * even though those references never actually happen. */
+#    undef strcmp
+#  endif
+#endif
+
 #include <stdio.h>
 #include <errno.h>