Ejemplo n.º 1
0
        public void GetRawData(MonoBtlsBio bio, MonoBtlsX509Format format)
        {
            CheckThrow();
            var ret = mono_btls_x509_get_raw_data(
                Handle.DangerousGetHandle(),
                bio.Handle.DangerousGetHandle(),
                format);

            CheckError(ret);
        }
Ejemplo n.º 2
0
 public byte[] GetRawData(MonoBtlsX509Format format)
 {
     using (var bio = new MonoBtlsBioMemory()) {
         var ret = mono_btls_x509_get_raw_data(
             Handle.DangerousGetHandle(),
             bio.Handle.DangerousGetHandle(),
             format);
         CheckError(ret);
         return(bio.GetData());
     }
 }
Ejemplo n.º 3
0
        public static MonoBtlsX509 LoadFromData(byte[] buffer, MonoBtlsX509Format format)
        {
            var data = Marshal.AllocHGlobal(buffer.Length);

            if (data == IntPtr.Zero)
            {
                throw new OutOfMemoryException();
            }

            try {
                Marshal.Copy(buffer, 0, data, buffer.Length);
                var x509 = mono_btls_x509_from_data(data, buffer.Length, format);
                if (x509 == IntPtr.Zero)
                {
                    throw new MonoBtlsException("Failed to read certificate from data.");
                }

                return(new MonoBtlsX509(new BoringX509Handle(x509)));
            } finally {
                Marshal.FreeHGlobal(data);
            }
        }
 internal X509CertificateImplBtls(byte[] data, MonoBtlsX509Format format)
 {
     x509 = MonoBtlsX509.LoadFromData(data, format);
 }
Ejemplo n.º 5
0
 public static X509Certificate2 CreateCertificate2(byte[] data, MonoBtlsX509Format format)
 {
     using (var impl = new X509CertificateImplBtls(data, format)) {
         return(new X509Certificate2(impl));
     }
 }
Ejemplo n.º 6
0
		public static X509Certificate2 CreateCertificate2 (byte[] data, MonoBtlsX509Format format, bool disallowFallback = false)
		{
			using (var impl = new X509CertificateImplBtls (data, format, disallowFallback)) {
				return new X509Certificate2 (impl);
			}
		}
Ejemplo n.º 7
0
		internal X509CertificateImplBtls (byte[] data, MonoBtlsX509Format format, bool disallowFallback = false)
		{
			this.disallowFallback = disallowFallback;
			x509 = MonoBtlsX509.LoadFromData (data, format);
		}
Ejemplo n.º 8
0
 extern static int mono_btls_x509_get_raw_data(IntPtr handle, IntPtr bio, MonoBtlsX509Format format);
Ejemplo n.º 9
0
 extern static IntPtr mono_btls_x509_from_data(IntPtr data, int len, MonoBtlsX509Format format);
Ejemplo n.º 10
0
		extern static int mono_btls_x509_get_raw_data (IntPtr handle, IntPtr bio, MonoBtlsX509Format format);
Ejemplo n.º 11
0
 public static X509Certificate2 CreateCertificate2(byte[] data, MonoBtlsX509Format format, bool disallowFallback = false)
 {
     using (var impl = new X509CertificateImplBtls(data, format, disallowFallback)) {
         return(new X509Certificate2(impl));
     }
 }
Ejemplo n.º 12
0
		extern static IntPtr mono_btls_x509_from_data (IntPtr data, int len, MonoBtlsX509Format format);
Ejemplo n.º 13
0
		public void GetRawData (MonoBtlsBio bio, MonoBtlsX509Format format)
		{
			CheckThrow ();
			var ret = mono_btls_x509_get_raw_data (
				Handle.DangerousGetHandle (),
				bio.Handle.DangerousGetHandle (),
				format);
			CheckError (ret);
		}
Ejemplo n.º 14
0
		public byte[] GetRawData (MonoBtlsX509Format format)
		{
			using (var bio = new MonoBtlsBioMemory ()) {
				var ret = mono_btls_x509_get_raw_data (
					Handle.DangerousGetHandle (),
					bio.Handle.DangerousGetHandle (),
					format);
				CheckError (ret);
				return bio.GetData ();
			}
		}
Ejemplo n.º 15
0
		public static MonoBtlsX509 LoadFromData (byte[] buffer, MonoBtlsX509Format format)
		{
			var data = Marshal.AllocHGlobal (buffer.Length);
			if (data == IntPtr.Zero)
				throw new OutOfMemoryException ();

			try {
				Marshal.Copy (buffer, 0, data, buffer.Length);
				var x509 = mono_btls_x509_from_data (data, buffer.Length, format);
				if (x509 == IntPtr.Zero)
					throw new MonoBtlsException ("Failed to read certificate from data.");

				return new MonoBtlsX509 (new BoringX509Handle (x509));
			} finally {
				Marshal.FreeHGlobal (data);
			}
		}
Ejemplo n.º 16
0
 internal X509CertificateImplBtls(byte[] data, MonoBtlsX509Format format, bool disallowFallback = false)
 {
     this.disallowFallback = disallowFallback;
     x509 = MonoBtlsX509.LoadFromData(data, format);
 }