Пример #1
0
 public SslStatus SetCertificate(SecIdentity identify, IEnumerable <SecCertificate> certificates)
 {
     using (var array = Bundle(identify, certificates)) {
         result = SSLSetCertificate(Handle, array.Handle);
         return(result);
     }
 }
Пример #2
0
        public SecIdentity2(SecIdentity identity)
        {
            if (identity == null)
            {
                throw new ArgumentNullException(nameof(identity));
            }

            InitializeHandle(sec_identity_create(identity.Handle));
        }
Пример #3
0
 public SecIdentity2(SecIdentity identity, params SecCertificate [] certificates)
 {
     if (identity == null)
     {
         throw new ArgumentNullException(nameof(identity));
     }
     if (certificates == null)
     {
         throw new ArgumentNullException(nameof(certificates));
     }
     using (var nsarray = NSArray.FromObjects(certificates))
         InitializeHandle(sec_identity_create_with_certificates(identity.Handle, nsarray.Handle));
 }
Пример #4
0
        NSArray Bundle(SecIdentity identity, IEnumerable <SecCertificate> certificates)
        {
            int i    = identity == null ? 0 : 1;
            int n    = certificates == null ? 0 : certificates.Count();
            var ptrs = new IntPtr [n + i];

            if (i == 1)
            {
                ptrs [0] = identity.Handle;
            }
            foreach (var certificate in certificates)
            {
                ptrs [i++] = certificate.Handle;
            }
            return(NSArray.FromIntPtrs(ptrs));
        }