Match OPENSSL_EXPORT in ssl/internal.h friend declarations.
After fixing up some issue with the BORINGSSL_IMPLEMENTATION define in
Chromium builds (which used to work fine but, with the test that
references ASN1_ITEM_rptr(BASIC_CONSTRAINTS), is a bit more strict),
I'm running into this warning.
../../third_party/boringssl/src/ssl/internal.h(3695,15): error:
'SSL_CTX_free' redeclared without 'dllimport' attribute: previous
'dllimport' ignored [-Werror,-Winconsistent-dllimport]
friend void SSL_CTX_free(SSL_CTX *);
^
Searching for friend.*EXPORT in Chromium shows they match exports in
friend declarations, so I gather this is just how it works.
Change-Id: I704686854c77406378882477a8bab3f1521e29e4
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/50145
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/ssl/internal.h b/ssl/internal.h
index ab23d29..5196f17 100644
--- a/ssl/internal.h
+++ b/ssl/internal.h
@@ -3692,7 +3692,7 @@
private:
~ssl_ctx_st();
- friend void SSL_CTX_free(SSL_CTX *);
+ friend OPENSSL_EXPORT void SSL_CTX_free(SSL_CTX *);
};
struct ssl_st {
@@ -3934,7 +3934,7 @@
private:
~ssl_session_st();
- friend void SSL_SESSION_free(SSL_SESSION *);
+ friend OPENSSL_EXPORT void SSL_SESSION_free(SSL_SESSION *);
};
struct ssl_ech_keys_st {
@@ -3947,7 +3947,7 @@
private:
~ssl_ech_keys_st() = default;
- friend void SSL_ECH_KEYS_free(SSL_ECH_KEYS *);
+ friend OPENSSL_EXPORT void SSL_ECH_KEYS_free(SSL_ECH_KEYS *);
};
#endif // OPENSSL_HEADER_SSL_INTERNAL_H