mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2024-11-16 00:12:43 +00:00
temporary disable Ed25519 per thread
This commit is contained in:
parent
7bfb499549
commit
430368de97
@ -421,26 +421,13 @@ namespace crypto
|
|||||||
EDDSAPoint Bi16Carry; // Bi16[64][0]
|
EDDSAPoint Bi16Carry; // Bi16[64][0]
|
||||||
};
|
};
|
||||||
|
|
||||||
static std::shared_ptr<Ed25519> g_Ed25519;
|
static std::unique_ptr<Ed25519> g_Ed25519;
|
||||||
#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) // gcc 4.8 and higer
|
std::unique_ptr<Ed25519>& GetEd25519 ()
|
||||||
static thread_local std::shared_ptr<Ed25519> g_Ed25519ThisThread;
|
|
||||||
#else
|
|
||||||
static std::shared_ptr<Ed25519> g_Ed25519ThisThread;
|
|
||||||
#endif
|
|
||||||
std::shared_ptr<Ed25519>& GetEd25519 ()
|
|
||||||
{
|
{
|
||||||
// TODO: implement it better
|
if (!g_Ed25519)
|
||||||
if (!g_Ed25519ThisThread)
|
g_Ed25519.reset (new Ed25519());
|
||||||
{
|
|
||||||
if (!g_Ed25519)
|
return g_Ed25519;
|
||||||
{
|
|
||||||
g_Ed25519 = std::make_shared<Ed25519>();
|
|
||||||
g_Ed25519ThisThread = g_Ed25519;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
g_Ed25519ThisThread = std::make_shared<Ed25519>(*g_Ed25519);
|
|
||||||
}
|
|
||||||
return g_Ed25519ThisThread;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user