aboutsummaryrefslogtreecommitdiff
path: root/ssl/ssl_aead_ctx.cc
diff options
context:
space:
mode:
authorDavid Benjamin <davidben@google.com>2017-07-20 12:22:21 -0400
committerDavid Benjamin <davidben@google.com>2017-07-20 17:24:12 +0000
commite39ac8fb590e47ae8323bd36be07368dea4ca37b (patch)
tree4589e2368e974e1d2cdb5b22fa3475ce9481a4a3 /ssl/ssl_aead_ctx.cc
parent1386aad102bfcdadbb7e0911f141067f6d67966d (diff)
downloadboringssl-e39ac8fb590e47ae8323bd36be07368dea4ca37b.zip
boringssl-e39ac8fb590e47ae8323bd36be07368dea4ca37b.tar.gz
boringssl-e39ac8fb590e47ae8323bd36be07368dea4ca37b.tar.bz2
Switch BORINGSSL_INTERNAL_CXX_TYPES in favor of subclassing games.
The previous attempt around the 'struct ssl_st' compatibility mess offended OSS-Fuzz and UBSan because one compilation unit passed a function pointer with ssl_st* and another called it with bssl::SSLConnection*. Linkers don't retain such types, of course, but to silence this alert, instead make C-visible types be separate from the implementation and subclass the public type. This does mean we risk polluting the symbol namespace, but hopefully the compiler is smart enough to inline the visible struct's constructor and destructor. Bug: 132 Change-Id: Ia75a89b3a22a202883ad671a630b72d0aeef680e Reviewed-on: https://boringssl-review.googlesource.com/18224 Commit-Queue: David Benjamin <davidben@google.com> Commit-Queue: Steven Valdez <svaldez@google.com> Reviewed-by: Steven Valdez <svaldez@google.com>
Diffstat (limited to 'ssl/ssl_aead_ctx.cc')
-rw-r--r--ssl/ssl_aead_ctx.cc2
1 files changed, 0 insertions, 2 deletions
diff --git a/ssl/ssl_aead_ctx.cc b/ssl/ssl_aead_ctx.cc
index 03bf0a9..3b8d1b2 100644
--- a/ssl/ssl_aead_ctx.cc
+++ b/ssl/ssl_aead_ctx.cc
@@ -12,8 +12,6 @@
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
-#define BORINGSSL_INTERNAL_CXX_TYPES
-
#include <openssl/ssl.h>
#include <assert.h>