Remove QUICHE_EXPORT annotations from testing/utils.h, and add explanatory comments to other files with those annotations.
PiperOrigin-RevId: 525519875
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.h
index b12b5c4..0f2cd5c 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.h
@@ -26,6 +26,10 @@
#include "quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blinder.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h
index 25bf944..109476f 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h
@@ -29,6 +29,10 @@
#include "openssl/evp.h"
#include "openssl/rsa.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blind_signer.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blind_signer.h
index c1abec1..e7f503e 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blind_signer.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blind_signer.h
@@ -24,6 +24,10 @@
#include "quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blinder.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blinder.h
index 519fbc2..0fb8304 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blinder.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_blinder.h
@@ -28,6 +28,10 @@
#include "quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/crypto_utils.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.h
index 569abe8..199717f 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.h
@@ -27,6 +27,10 @@
#include "quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/verifier.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/shared/proto_utils.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/shared/proto_utils.h
index 30fb2de..bc9b8df 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/shared/proto_utils.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/shared/proto_utils.h
@@ -21,6 +21,10 @@
#include "absl/time/time.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "quiche/common/platform/api/quiche_export.h"
+// copybara:strip_begin(internal comment)
+// The QUICHE_EXPORT annotation is necessary for some classes and functions
+// to link correctly on Windows. Please do not remove them!
+// copybara:strip_end
namespace private_membership {
namespace anonymous_tokens {
diff --git a/quiche/blind_sign_auth/anonymous_tokens/cpp/testing/utils.h b/quiche/blind_sign_auth/anonymous_tokens/cpp/testing/utils.h
index d286d56..5c6aa1c 100644
--- a/quiche/blind_sign_auth/anonymous_tokens/cpp/testing/utils.h
+++ b/quiche/blind_sign_auth/anonymous_tokens/cpp/testing/utils.h
@@ -26,12 +26,11 @@
#include "quiche/blind_sign_auth/anonymous_tokens/cpp/crypto/constants.h"
#include "quiche/blind_sign_auth/anonymous_tokens/proto/anonymous_tokens.pb.h"
#include "openssl/base.h"
-#include "quiche/common/platform/api/quiche_export.h"
namespace private_membership {
namespace anonymous_tokens {
-struct QUICHE_EXPORT IetfStandardRsaBlindSignatureTestVector {
+struct IetfStandardRsaBlindSignatureTestVector {
std::string n;
std::string e;
std::string d;
@@ -46,7 +45,7 @@
std::string signature;
};
-struct QUICHE_EXPORT IetfRsaBlindSignatureWithPublicMetadataTestVector {
+struct IetfRsaBlindSignatureWithPublicMetadataTestVector {
std::string n;
std::string e;
std::string d;
@@ -63,8 +62,7 @@
// Creates a pair containing a standard RSA Private key and an Anonymous Tokens
// RSABlindSignaturePublicKey using RSA_F4 (65537) as the public exponent and
// other input parameters.
-absl::StatusOr<std::pair<bssl::UniquePtr<RSA>,
- RSABlindSignaturePublicKey>> QUICHE_EXPORT
+absl::StatusOr<std::pair<bssl::UniquePtr<RSA>, RSABlindSignaturePublicKey>>
CreateTestKey(int key_size = 512, HashType sig_hash = AT_HASH_TYPE_SHA384,
MaskGenFunction mfg1_hash = AT_MGF_SHA384, int salt_length = 48,
MessageMaskType message_mask_type = AT_MESSAGE_MASK_CONCAT,
@@ -83,65 +81,60 @@
// TestSign can be removed once rsa_blind_signer is moved to
// anonympous_tokens/public/cpp/crypto
-absl::StatusOr<std::string> QUICHE_EXPORT TestSign(
- absl::string_view blinded_data, RSA* rsa_key);
+absl::StatusOr<std::string> TestSign(absl::string_view blinded_data,
+ RSA* rsa_key);
// TestSignWithPublicMetadata can be removed once rsa_blind_signer is moved to
// anonympous_tokens/public/cpp/crypto
-absl::StatusOr<std::string> QUICHE_EXPORT TestSignWithPublicMetadata(
+absl::StatusOr<std::string> TestSignWithPublicMetadata(
absl::string_view blinded_data, absl::string_view public_metadata,
const RSA& rsa_key);
// This method returns a newly generated RSA key pair, setting the public
// exponent to be the standard RSA_F4 (65537) and the default modulus size to
// 512 bytes.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
-GetStandardRsaKeyPair(int modulus_size_in_bytes = kRsaModulusSizeInBytes512);
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> GetStandardRsaKeyPair(
+ int modulus_size_in_bytes = kRsaModulusSizeInBytes512);
// Method returns fixed 2048-bit strong RSA modulus for testing.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
-GetStrongRsaKeys2048();
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> GetStrongRsaKeys2048();
// Method returns another fixed 2048-bit strong RSA modulus for testing.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>>
GetAnotherStrongRsaKeys2048();
// Method returns fixed 3072-bit strong RSA modulus for testing.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
-GetStrongRsaKeys3072();
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> GetStrongRsaKeys3072();
// Method returns fixed 4096-bit strong RSA modulus for testing.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
-GetStrongRsaKeys4096();
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> GetStrongRsaKeys4096();
// Returns the IETF test example from
// https://datatracker.ietf.org/doc/draft-irtf-cfrg-rsa-blind-signatures/
-IetfStandardRsaBlindSignatureTestVector QUICHE_EXPORT
+IetfStandardRsaBlindSignatureTestVector
GetIetfStandardRsaBlindSignatureTestVector();
// This method returns a RSA key pair as described in the IETF test example
// above.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>>
GetIetfStandardRsaBlindSignatureTestKeys();
// Returns the IETF test with Public Metadata examples from
// https://datatracker.ietf.org/doc/draft-amjad-cfrg-partially-blind-rsa/
//
// Note that all test vectors use the same RSA key pair.
-std::vector<
- IetfRsaBlindSignatureWithPublicMetadataTestVector> QUICHE_EXPORT
+std::vector<IetfRsaBlindSignatureWithPublicMetadataTestVector>
GetIetfRsaBlindSignatureWithPublicMetadataTestVectors();
// This method returns a RSA key pair as described in the IETF test with Public
// Metadata example. It can be used for all test vectors returned by
// GetIetfRsaBlindSignatureWithPublicMetadataTestVectors.
-absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>> QUICHE_EXPORT
+absl::StatusOr<std::pair<RSAPublicKey, RSAPrivateKey>>
GetIetfRsaBlindSignatureWithPublicMetadataTestKeys();
// Outputs a random string of n characters.
-std::string QUICHE_EXPORT RandomString(
- int n, std::uniform_int_distribution<int>* distr_u8,
- std::mt19937_64* generator);
+std::string RandomString(int n, std::uniform_int_distribution<int>* distr_u8,
+ std::mt19937_64* generator);
#define ANON_TOKENS_ASSERT_OK_AND_ASSIGN(lhs, rexpr) \
ANON_TOKENS_ASSERT_OK_AND_ASSIGN_IMPL_( \