com.fitbur.bouncycastle.crypto.tls.UseSRTPData Maven / Gradle / Ivy
package com.fitbur.bouncycastle.crypto.tls;
/**
* RFC 5764 4.1.1
*/
public class UseSRTPData
{
private int[] protectionProfiles;
private byte[] mki;
/**
* @param protectionProfiles see {@link SRTPProtectionProfile} for valid constants.
* @param mki valid lengths from 0 to 255.
*/
public UseSRTPData(int[] protectionProfiles, byte[] mki)
{
if (protectionProfiles == null || protectionProfiles.length < 1
|| protectionProfiles.length >= (1 << 15))
{
throw new IllegalArgumentException(
"'protectionProfiles' must have length from 1 to (2^15 - 1)");
}
if (mki == null)
{
mki = TlsUtils.EMPTY_BYTES;
}
else if (mki.length > 255)
{
throw new IllegalArgumentException("'mki' cannot be longer than 255 bytes");
}
this.protectionProfiles = protectionProfiles;
this.mki = mki;
}
/**
* @return see {@link SRTPProtectionProfile} for valid constants.
*/
public int[] getProtectionProfiles()
{
return protectionProfiles;
}
/**
* @return valid lengths from 0 to 255.
*/
public byte[] getMki()
{
return mki;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy