예제 #1
0
        public static bool TryParse(string s, out SmtpX509Identifier result)
        {
            result = null;
            string subject;
            SmtpDomainWithSubdomains subjectCN;
            string issuer;
            bool   flag;

            if (!SmtpX509Identifier.InternalTryParse(s, out subject, out subjectCN, out issuer, out flag))
            {
                return(false);
            }
            result = new SmtpX509Identifier(subject, subjectCN, issuer);
            return(true);
        }
예제 #2
0
        public SmtpX509Identifier(string smtpX509Identifier)
        {
            string certificateSubject;
            SmtpDomainWithSubdomains subjectCommonName;
            string certificateIssuer;
            bool   flag;

            if (!SmtpX509Identifier.InternalTryParse(smtpX509Identifier, out certificateSubject, out subjectCommonName, out certificateIssuer, out flag))
            {
                string s       = string.IsNullOrEmpty(smtpX509Identifier) ? string.Empty : smtpX509Identifier;
                string message = flag ? DataStrings.InvalidDomainInSmtpX509Identifier(s) : DataStrings.InvalidSmtpX509Identifier(s);
                throw new StrongTypeFormatException(message, "SmtpX509Identifier");
            }
            this.CertificateIssuer  = certificateIssuer;
            this.CertificateSubject = certificateSubject;
            this.SubjectCommonName  = subjectCommonName;
        }