static ArrayList LoadCRLs (string filename)
{
X509Crl crl = null;
ArrayList list = new ArrayList ();
switch (Path.GetExtension (filename).ToUpper ()) {
case ".P7B":
case ".SPC":
SoftwarePublisherCertificate spc = SoftwarePublisherCertificate.CreateFromFile (filename);
list.AddRange (spc.Crls);
spc = null;
break;
case ".CRL":
using (FileStream fs = File.OpenRead (filename)) {
byte[] data = new byte [fs.Length];
fs.Read (data, 0, data.Length);
crl = new X509Crl (data);
}
list.Add (crl);
break;
default:
Console.WriteLine ("Unknown file extension: {0}",
Path.GetExtension (filename));
break;
}
return list;
}