add all
This commit is contained in:
80
Packages/com.tivadar.best.http/Runtime/3rdParty/BouncyCastle/crypto/digests/NonMemoableDigest.cs
vendored
Normal file
80
Packages/com.tivadar.best.http/Runtime/3rdParty/BouncyCastle/crypto/digests/NonMemoableDigest.cs
vendored
Normal file
@@ -0,0 +1,80 @@
|
||||
#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
|
||||
#pragma warning disable
|
||||
using System;
|
||||
|
||||
namespace Best.HTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests
|
||||
{
|
||||
/**
|
||||
* Wrapper removes exposure to the IMemoable interface on an IDigest implementation.
|
||||
*/
|
||||
public class NonMemoableDigest
|
||||
: IDigest
|
||||
{
|
||||
protected readonly IDigest mBaseDigest;
|
||||
|
||||
/**
|
||||
* Base constructor.
|
||||
*
|
||||
* @param baseDigest underlying digest to use.
|
||||
* @exception IllegalArgumentException if baseDigest is null
|
||||
*/
|
||||
public NonMemoableDigest(IDigest baseDigest)
|
||||
{
|
||||
if (baseDigest == null)
|
||||
throw new ArgumentNullException("baseDigest");
|
||||
|
||||
this.mBaseDigest = baseDigest;
|
||||
}
|
||||
|
||||
public virtual string AlgorithmName
|
||||
{
|
||||
get { return mBaseDigest.AlgorithmName; }
|
||||
}
|
||||
|
||||
public virtual int GetDigestSize()
|
||||
{
|
||||
return mBaseDigest.GetDigestSize();
|
||||
}
|
||||
|
||||
public virtual void Update(byte input)
|
||||
{
|
||||
mBaseDigest.Update(input);
|
||||
}
|
||||
|
||||
public virtual void BlockUpdate(byte[] input, int inOff, int len)
|
||||
{
|
||||
mBaseDigest.BlockUpdate(input, inOff, len);
|
||||
}
|
||||
|
||||
#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER || UNITY_2021_2_OR_NEWER
|
||||
public virtual void BlockUpdate(ReadOnlySpan<byte> input)
|
||||
{
|
||||
mBaseDigest.BlockUpdate(input);
|
||||
}
|
||||
#endif
|
||||
|
||||
public virtual int DoFinal(byte[] output, int outOff)
|
||||
{
|
||||
return mBaseDigest.DoFinal(output, outOff);
|
||||
}
|
||||
|
||||
#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER || UNITY_2021_2_OR_NEWER
|
||||
public virtual int DoFinal(Span<byte> output)
|
||||
{
|
||||
return mBaseDigest.DoFinal(output);
|
||||
}
|
||||
#endif
|
||||
|
||||
public virtual void Reset()
|
||||
{
|
||||
mBaseDigest.Reset();
|
||||
}
|
||||
|
||||
public virtual int GetByteLength()
|
||||
{
|
||||
return mBaseDigest.GetByteLength();
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma warning restore
|
||||
#endif
|
||||
Reference in New Issue
Block a user