private static CK_MECHANISM _CreateMechanism(uint mechanism, byte[] parameter)
{
CK_MECHANISM mech = new CK_MECHANISM();
mech.Mechanism = mechanism;
if ((parameter != null) && (parameter.Length > 0))
{
mech.Parameter = UnmanagedMemory.Allocate(parameter.Length);
UnmanagedMemory.Write(mech.Parameter, parameter);
mech.ParameterLen = Convert.ToUInt32(parameter.Length);
}
else
{
mech.Parameter = IntPtr.Zero;
mech.ParameterLen = 0;
}
return mech;
}