update readme (#21797)
[mono-project.git] / mono / btls / btls-pkcs12.h
blob0df548cca368fa82fdf96ba93667f1772f8cb1d9
1 //
2 // btls-pkcs12.h
3 // MonoBtls
4 //
5 // Created by Martin Baulig on 3/8/16.
6 // Copyright © 2016 Xamarin. All rights reserved.
7 //
9 #ifndef __btls__btls_pkcs12__
10 #define __btls__btls_pkcs12__
12 #include <stdio.h>
13 #include "btls-ssl.h"
14 #include "btls-x509.h"
16 MONO_API MonoBtlsPkcs12 *
17 mono_btls_pkcs12_new (void);
19 MONO_API int
20 mono_btls_pkcs12_get_count (MonoBtlsPkcs12 *pkcs12);
22 MONO_API X509 *
23 mono_btls_pkcs12_get_cert (MonoBtlsPkcs12 *pkcs12, int index);
25 MONO_API STACK_OF(X509) *
26 mono_btls_pkcs12_get_certs (MonoBtlsPkcs12 *pkcs12);
28 MONO_API int
29 mono_btls_pkcs12_free (MonoBtlsPkcs12 *pkcs12);
31 MONO_API MonoBtlsPkcs12 *
32 mono_btls_pkcs12_up_ref (MonoBtlsPkcs12 *pkcs12);
34 MONO_API void
35 mono_btls_pkcs12_add_cert (MonoBtlsPkcs12 *pkcs12, X509 *x509);
37 MONO_API int
38 mono_btls_pkcs12_import (MonoBtlsPkcs12 *pkcs12, const void *data, int len, const void *password);
40 MONO_API int
41 mono_btls_pkcs12_has_private_key (MonoBtlsPkcs12 *pkcs12);
43 MONO_API EVP_PKEY *
44 mono_btls_pkcs12_get_private_key (MonoBtlsPkcs12 *pkcs12);
46 #endif /* __btls__btls_pkcs12__ */