5 // Created by Martin Baulig on 3/3/16.
6 // Copyright © 2016 Xamarin. All rights reserved.
9 #ifndef __btls__btls_x509_lookup__
10 #define __btls__btls_x509_lookup__
14 #include "btls-x509.h"
15 #include "btls-x509-store.h"
18 MONO_BTLS_X509_LOOKUP_TYPE_UNKNOWN
= 0,
19 MONO_BTLS_X509_LOOKUP_TYPE_FILE
,
20 MONO_BTLS_X509_LOOKUP_TYPE_HASH_DIR
,
21 MONO_BTLS_X509_LOOKUP_TYPE_MONO
22 } MonoBtlsX509LookupType
;
24 MONO_API MonoBtlsX509Lookup
*
25 mono_btls_x509_lookup_new (MonoBtlsX509Store
*store
, MonoBtlsX509LookupType type
);
28 mono_btls_x509_lookup_load_file (MonoBtlsX509Lookup
*lookup
, const char *file
, MonoBtlsX509FileType type
);
31 mono_btls_x509_lookup_add_dir (MonoBtlsX509Lookup
*lookup
, const char *dir
, MonoBtlsX509FileType type
);
33 MONO_API MonoBtlsX509Lookup
*
34 mono_btls_x509_lookup_up_ref (MonoBtlsX509Lookup
*lookup
);
37 mono_btls_x509_lookup_free (MonoBtlsX509Lookup
*lookup
);
40 mono_btls_x509_lookup_init (MonoBtlsX509Lookup
*lookup
);
42 MONO_API MonoBtlsX509LookupType
43 mono_btls_x509_lookup_get_type (MonoBtlsX509Lookup
*lookup
);
45 MONO_API X509_LOOKUP
*
46 mono_btls_x509_lookup_peek_lookup (MonoBtlsX509Lookup
*lookup
);
49 mono_btls_x509_lookup_shutdown (MonoBtlsX509Lookup
*lookup
);
52 mono_btls_x509_lookup_by_subject (MonoBtlsX509Lookup
*lookup
, MonoBtlsX509Name
*name
);
55 mono_btls_x509_lookup_by_fingerprint (MonoBtlsX509Lookup
*lookup
, unsigned char *bytes
, int len
);
57 #endif /* defined(__btls__btls_x509_lookup__) */