public static int EncodeLength(IBerOutput output, int value)
{
int size = 1;
if(value == BerDefinitions.IndefiniteLength)
{
output.WriteByte(0x80);
}
else
{
if(value <= 0x7F)
{
output.WriteByte((byte)(value & 0x7F));
}
else
{
int integerLength = GetIntegerLength((int)value);
output.WriteByte((byte)(0x80 | integerLength));
size += EncodeInteger(output, (int)value, integerLength);
}
}
return size;
}