培训考核三期,新版培训,网页版培训登录器
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

75 lines
2.3 KiB

#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
#pragma warning disable
using System;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509
{
/**
* The OtherName object.
* <pre>
* OtherName ::= SEQUENCE {
* type-id OBJECT IDENTIFIER,
* value [0] EXPLICIT ANY DEFINED BY type-id }
* </pre>
*/
public class OtherName
: Asn1Encodable
{
private readonly DerObjectIdentifier typeID;
private readonly Asn1Encodable value;
/**
* OtherName factory method.
* @param obj the object used to construct an instance of <code>
* OtherName</code>. It must be an instance of <code>OtherName
* </code> or <code>ASN1Sequence</code>.
* @return the instance of <code>OtherName</code> built from the
* supplied object.
* @throws java.lang.IllegalArgumentException if the object passed
* to the factory is not an instance of <code>OtherName</code> or something that
* can be converted into an appropriate <code>ASN1Sequence</code>.
*/
public static OtherName GetInstance(object obj)
{
if (obj is OtherName)
return (OtherName)obj;
if (obj == null)
return null;
return new OtherName(Asn1Sequence.GetInstance(obj));
}
/**
* Base constructor.
* @param typeID the type of the other name.
* @param value the ANY object that represents the value.
*/
public OtherName(DerObjectIdentifier typeID, Asn1Encodable value)
{
this.typeID = typeID;
this.value = value;
}
private OtherName(Asn1Sequence seq)
{
this.typeID = DerObjectIdentifier.GetInstance(seq[0]);
this.value = DerTaggedObject.GetInstance(seq[1]).GetObject(); // explicitly tagged
}
public virtual DerObjectIdentifier TypeID
{
get { return typeID; }
}
public Asn1Encodable Value
{
get { return value; }
}
public override Asn1Object ToAsn1Object()
{
return new DerSequence(typeID, new DerTaggedObject(true, 0, value));
}
}
}
#pragma warning restore
#endif