#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
#pragma warning disable
using System;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Tls.Crypto
{
/// Interface for MAC services.
public interface TlsMac
{
/// Set the key to be used by the MAC implementation supporting this service.
/// array holding the MAC key.
/// offset into the array the key starts at.
/// length of the key in the array.
void SetKey(byte[] key, int keyOff, int keyLen);
/// Update the MAC with the passed in input.
/// input array containing the data.
/// offset into the input array the input starts at.
/// the length of the input data.
void Update(byte[] input, int inOff, int length);
/// Return calculated MAC for any input passed in.
/// the MAC value.
byte[] CalculateMac();
/// Write the calculated MAC to an output buffer.
/// output array to write the MAC to.
/// offset into the output array to write the MAC to.
void CalculateMac(byte[] output, int outOff);
/// Return the length of the MAC generated by this service.
/// the MAC length.
int MacLength { get; }
/// Reset the MAC underlying this service.
void Reset();
}
}
#pragma warning restore
#endif