summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpavook <[email protected]>2025-07-25 23:52:26 +0300
committerpavook <[email protected]>2025-07-26 00:04:54 +0300
commit0b57931cfa072c1cad2cc963fa1951a73951481f (patch)
treecf7d63f442b58665a9af2820dc6460e497c08d3e
parent980e4056a4ec010a90ddfcba98d47c943eb9ef47 (diff)
YT-25354: Add "dynamic" signature generators & validators
These are needed to correctly reconfigure signature validators from inside TSignatureComponents: once the real validator has been released to the user, we can't really reset it back to an always throwing one. commit_hash:63b8f40add5209a368f661d9fd3ed713e89e0695
-rw-r--r--yt/yt/client/signature/generator.cpp6
-rw-r--r--yt/yt/client/signature/generator.h3
2 files changed, 4 insertions, 5 deletions
diff --git a/yt/yt/client/signature/generator.cpp b/yt/yt/client/signature/generator.cpp
index ba2de22d04a..799b64e620e 100644
--- a/yt/yt/client/signature/generator.cpp
+++ b/yt/yt/client/signature/generator.cpp
@@ -14,7 +14,7 @@ TSignaturePtr ISignatureGenerator::Sign(std::string payload) const
{
auto signature = New<TSignature>();
signature->Payload_ = std::move(payload);
- DoSign(signature);
+ Resign(signature);
return signature;
}
@@ -25,14 +25,14 @@ namespace {
struct TDummySignatureGenerator
: public ISignatureGenerator
{
- void DoSign(const TSignaturePtr& /*signature*/) const final
+ void Resign(const TSignaturePtr& /*signature*/) const final
{ }
};
struct TAlwaysThrowingSignatureGenerator
: public ISignatureGenerator
{
- void DoSign(const TSignaturePtr& /*signature*/) const final
+ void Resign(const TSignaturePtr& /*signature*/) const final
{
THROW_ERROR_EXCEPTION("Signature generation is unsupported");
}
diff --git a/yt/yt/client/signature/generator.h b/yt/yt/client/signature/generator.h
index 3772c841b3d..353c26b1bcb 100644
--- a/yt/yt/client/signature/generator.h
+++ b/yt/yt/client/signature/generator.h
@@ -13,10 +13,9 @@ struct ISignatureGenerator
{
[[nodiscard]] TSignaturePtr Sign(std::string payload) const;
-private:
//! Fills out the Signature_ and Header_ fields in a given TSignature
//! based on its payload.
- virtual void DoSign(const TSignaturePtr& signature) const = 0;
+ virtual void Resign(const TSignaturePtr& signature) const = 0;
};
DEFINE_REFCOUNTED_TYPE(ISignatureGenerator)