Example #1
0
        /// <summary>
        /// Exports the current X509CRL2 object to a file.
        /// </summary>
        /// <param name="path">The path to a CRL file.</param>
        /// <param name="encoding">Encoding of the exported file.</param>
        /// <exception cref="ArgumentException">Specified encoding type is not supported.</exception>
        /// <exception cref="UninitializedObjectException">An object is not initialized.</exception>
        public void Export(String path, X509EncodingType encoding)
        {
            if (RawData == null)
            {
                throw new UninitializedObjectException();
            }
            String Base64;

            switch (encoding)
            {
            case X509EncodingType.Base64:
                Base64 = AsnFormatter.BinaryToString(RawData, EncodingType.Base64);
                File.WriteAllText(path, Base64);
                break;

            case X509EncodingType.Base64Header:
                Base64 = AsnFormatter.BinaryToString(RawData, EncodingType.Base64CrlHeader);
                File.WriteAllText(path, Base64);
                break;

            case X509EncodingType.Binary:
                File.WriteAllBytes(path, RawData);
                break;

            default:
                throw new ArgumentException("Specified encoding is not supported.");
            }
        }
Example #2
0
        public String Encode(X509EncodingType encoding)
        {
            switch (encoding)
            {
            case X509EncodingType.Base64:
                return(Convert.ToBase64String(_rawData, Base64FormattingOptions.InsertLineBreaks));

            case X509EncodingType.Base64Header:
                return(AsnFormatter.BinaryToString(_rawData, EncodingType.Base64CrlHeader));

            default:
                throw new ArgumentException("Binary encoding is not supported.");
            }
        }