[build] Skips RemoteExecuted bases tests on monodroid
[mono-project.git] / mono / btls / btls-error.c
blobd073447fc771c425cdc4130a20590a7452e0e689
1 //
2 // btls-error.c
3 // MonoBtls
4 //
5 // Created by Martin Baulig on 6/19/16.
6 // Copyright © 2016 Xamarin. All rights reserved.
7 //
9 #include "btls-error.h"
10 #include "btls-util.h"
11 #include <assert.h>
13 MONO_API int
14 mono_btls_error_peek_error (void)
16 return ERR_peek_error ();
19 MONO_API int
20 mono_btls_error_get_error (void)
22 return ERR_get_error ();
25 MONO_API int
26 mono_btls_error_peek_error_line (const char **file, int *line)
28 return ERR_peek_error_line (file, line);
31 MONO_API int
32 mono_btls_error_get_error_line (const char **file, int *line)
34 return ERR_get_error_line (file, line);
37 MONO_API void
38 mono_btls_error_clear_error (void)
40 ERR_clear_error ();
43 MONO_API void
44 mono_btls_error_get_error_string_n (int error, char *buf, int len)
46 ERR_error_string_n (error, buf, len);
49 MONO_API int
50 mono_btls_error_get_reason (int error)
52 const uint32_t lib = ERR_GET_LIB (error);
53 const uint32_t reason = ERR_GET_REASON (error);
55 if (lib == ERR_LIB_SYS)
56 return -1;
58 switch (reason) {
59 case SSL_R_NO_RENEGOTIATION:
60 return 100;
61 default:
62 return 0;
65 return reason;