diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-25 21:02:47 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-25 21:02:47 +0100 |
| commit | dd26d06e1cc09bdebe1c2f2db63668d4f27086cf (patch) | |
| tree | c75a43ec25bc162361b9dbfbd9c7ab67f048f990 /src/wrapped | |
| parent | 235784b46f47411b73d383c4fb462c3ffac323a4 (diff) | |
| download | box64-dd26d06e1cc09bdebe1c2f2db63668d4f27086cf.tar.gz box64-dd26d06e1cc09bdebe1c2f2db63668d4f27086cf.zip | |
Added wrapped libgnutls
Diffstat (limited to 'src/wrapped')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 6 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 3 | ||||
| -rwxr-xr-x | src/wrapped/wrappedfontconfig_private.h | 2 | ||||
| -rwxr-xr-x | src/wrapped/wrappedgnutls.c | 145 | ||||
| -rwxr-xr-x | src/wrapped/wrappedgnutls_private.h | 1117 |
6 files changed, 1275 insertions, 1 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 397bf23f..b0821289 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -297,6 +297,7 @@ #() lFlll #() lFlpi #() lFppi +#() lFppL #() lFSpl #() LFLLi #() LFLLI @@ -637,6 +638,7 @@ #() iFppupp #() iFppllp #() iFppLpi +#() iFppLpL #() iFppLpp #() iFpppii #() iFpppiL @@ -959,6 +961,7 @@ #() iFppiuiippL #() iFpppiiuuii #() iFpppiipiiu +#() iFppppppppu #() iFppppppppp #() pFEppiiuuLi #() pFEppuippuu diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index e6d1499e..9a7c4059 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -330,6 +330,7 @@ typedef intptr_t (*lFipL_t)(int32_t, void*, uintptr_t); typedef intptr_t (*lFlll_t)(intptr_t, intptr_t, intptr_t); typedef intptr_t (*lFlpi_t)(intptr_t, void*, int32_t); typedef intptr_t (*lFppi_t)(void*, void*, int32_t); +typedef intptr_t (*lFppL_t)(void*, void*, uintptr_t); typedef intptr_t (*lFSpl_t)(void*, void*, intptr_t); typedef uintptr_t (*LFLLi_t)(uintptr_t, uintptr_t, int32_t); typedef uintptr_t (*LFLLI_t)(uintptr_t, uintptr_t, int64_t); @@ -670,6 +671,7 @@ typedef int32_t (*iFppupi_t)(void*, void*, uint32_t, void*, int32_t); typedef int32_t (*iFppupp_t)(void*, void*, uint32_t, void*, void*); typedef int32_t (*iFppllp_t)(void*, void*, intptr_t, intptr_t, void*); typedef int32_t (*iFppLpi_t)(void*, void*, uintptr_t, void*, int32_t); +typedef int32_t (*iFppLpL_t)(void*, void*, uintptr_t, void*, uintptr_t); typedef int32_t (*iFppLpp_t)(void*, void*, uintptr_t, void*, void*); typedef int32_t (*iFpppii_t)(void*, void*, void*, int32_t, int32_t); typedef int32_t (*iFpppiL_t)(void*, void*, void*, int32_t, uintptr_t); @@ -992,6 +994,7 @@ typedef int32_t (*iFpipLpiiip_t)(void*, int32_t, void*, uintptr_t, void*, int32_ typedef int32_t (*iFppiuiippL_t)(void*, void*, int32_t, uint32_t, int32_t, int32_t, void*, void*, uintptr_t); typedef int32_t (*iFpppiiuuii_t)(void*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t); typedef int32_t (*iFpppiipiiu_t)(void*, void*, void*, int32_t, int32_t, void*, int32_t, int32_t, uint32_t); +typedef int32_t (*iFppppppppu_t)(void*, void*, void*, void*, void*, void*, void*, void*, uint32_t); typedef int32_t (*iFppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFEppiiuuLi_t)(x64emu_t*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, uintptr_t, int32_t); typedef void* (*pFEppuippuu_t)(x64emu_t*, void*, void*, uint32_t, int32_t, void*, void*, uint32_t, uint32_t); @@ -1386,6 +1389,7 @@ void lFipL(x64emu_t *emu, uintptr_t fcn) { lFipL_t fn = (lFipL_t)fcn; R_RAX=(int void lFlll(x64emu_t *emu, uintptr_t fcn) { lFlll_t fn = (lFlll_t)fcn; R_RAX=(intptr_t)fn((intptr_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void lFlpi(x64emu_t *emu, uintptr_t fcn) { lFlpi_t fn = (lFlpi_t)fcn; R_RAX=(intptr_t)fn((intptr_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX); } void lFppi(x64emu_t *emu, uintptr_t fcn) { lFppi_t fn = (lFppi_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX); } +void lFppL(x64emu_t *emu, uintptr_t fcn) { lFppL_t fn = (lFppL_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void lFSpl(x64emu_t *emu, uintptr_t fcn) { lFSpl_t fn = (lFSpl_t)fcn; R_RAX=(intptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (intptr_t)R_RDX); } void LFLLi(x64emu_t *emu, uintptr_t fcn) { LFLLi_t fn = (LFLLi_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (uintptr_t)R_RSI, (int32_t)R_RDX); } void LFLLI(x64emu_t *emu, uintptr_t fcn) { LFLLI_t fn = (LFLLI_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX); } @@ -1726,6 +1730,7 @@ void iFppupi(x64emu_t *emu, uintptr_t fcn) { iFppupi_t fn = (iFppupi_t)fcn; R_RA void iFppupp(x64emu_t *emu, uintptr_t fcn) { iFppupp_t fn = (iFppupp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFppllp(x64emu_t *emu, uintptr_t fcn) { iFppllp_t fn = (iFppllp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8); } void iFppLpi(x64emu_t *emu, uintptr_t fcn) { iFppLpi_t fn = (iFppLpi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (int32_t)R_R8); } +void iFppLpL(x64emu_t *emu, uintptr_t fcn) { iFppLpL_t fn = (iFppLpL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } void iFppLpp(x64emu_t *emu, uintptr_t fcn) { iFppLpp_t fn = (iFppLpp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFpppii(x64emu_t *emu, uintptr_t fcn) { iFpppii_t fn = (iFpppii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); } void iFpppiL(x64emu_t *emu, uintptr_t fcn) { iFpppiL_t fn = (iFpppiL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (uintptr_t)R_R8); } @@ -2048,6 +2053,7 @@ void iFpipLpiiip(x64emu_t *emu, uintptr_t fcn) { iFpipLpiiip_t fn = (iFpipLpiiip void iFppiuiippL(x64emu_t *emu, uintptr_t fcn) { iFppiuiippL_t fn = (iFppiuiippL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); } void iFpppiiuuii(x64emu_t *emu, uintptr_t fcn) { iFpppiiuuii_t fn = (iFpppiiuuii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); } void iFpppiipiiu(x64emu_t *emu, uintptr_t fcn) { iFpppiipiiu_t fn = (iFpppiipiiu_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); } +void iFppppppppu(x64emu_t *emu, uintptr_t fcn) { iFppppppppu_t fn = (iFppppppppu_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); } void iFppppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppppp_t fn = (iFppppppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void pFEppiiuuLi(x64emu_t *emu, uintptr_t fcn) { pFEppiiuuLi_t fn = (pFEppiiuuLi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uintptr_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); } void pFEppuippuu(x64emu_t *emu, uintptr_t fcn) { pFEppuippuu_t fn = (pFEppuippuu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); } diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 36ed39f1..318baee4 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -327,6 +327,7 @@ void lFipL(x64emu_t *emu, uintptr_t fnc); void lFlll(x64emu_t *emu, uintptr_t fnc); void lFlpi(x64emu_t *emu, uintptr_t fnc); void lFppi(x64emu_t *emu, uintptr_t fnc); +void lFppL(x64emu_t *emu, uintptr_t fnc); void lFSpl(x64emu_t *emu, uintptr_t fnc); void LFLLi(x64emu_t *emu, uintptr_t fnc); void LFLLI(x64emu_t *emu, uintptr_t fnc); @@ -667,6 +668,7 @@ void iFppupi(x64emu_t *emu, uintptr_t fnc); void iFppupp(x64emu_t *emu, uintptr_t fnc); void iFppllp(x64emu_t *emu, uintptr_t fnc); void iFppLpi(x64emu_t *emu, uintptr_t fnc); +void iFppLpL(x64emu_t *emu, uintptr_t fnc); void iFppLpp(x64emu_t *emu, uintptr_t fnc); void iFpppii(x64emu_t *emu, uintptr_t fnc); void iFpppiL(x64emu_t *emu, uintptr_t fnc); @@ -989,6 +991,7 @@ void iFpipLpiiip(x64emu_t *emu, uintptr_t fnc); void iFppiuiippL(x64emu_t *emu, uintptr_t fnc); void iFpppiiuuii(x64emu_t *emu, uintptr_t fnc); void iFpppiipiiu(x64emu_t *emu, uintptr_t fnc); +void iFppppppppu(x64emu_t *emu, uintptr_t fnc); void iFppppppppp(x64emu_t *emu, uintptr_t fnc); void pFEppiiuuLi(x64emu_t *emu, uintptr_t fnc); void pFEppuippuu(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedfontconfig_private.h b/src/wrapped/wrappedfontconfig_private.h index 6ea2a289..ca775d3e 100755 --- a/src/wrapped/wrappedfontconfig_private.h +++ b/src/wrapped/wrappedfontconfig_private.h @@ -159,7 +159,7 @@ GO(FcPatternGetInteger, iFppip) GO(FcPatternGetLangSet, iFppip) GO(FcPatternGetMatrix, iFppip) GO(FcPatternGetString, iFppip) -//GO(FcPatternHash, +GO(FcPatternHash, iFp) //GO(FcPatternPrint, //GO(FcPatternReference, //GO(FcPatternRemove, diff --git a/src/wrapped/wrappedgnutls.c b/src/wrapped/wrappedgnutls.c new file mode 100755 index 00000000..287a1005 --- /dev/null +++ b/src/wrapped/wrappedgnutls.c @@ -0,0 +1,145 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "callback.h" + +const char* gnutlsName = "libgnutls.so.30"; +#define LIBNAME gnutls + +static library_t *my_lib = NULL; + +typedef void (*vFp_t) (void*); +typedef void (*vFpp_t) (void*, void*); + +#define SUPER() \ + GO(gnutls_global_set_log_function, vFp_t) \ + GO(gnutls_transport_set_pull_function, vFpp_t) \ + GO(gnutls_transport_set_push_function, vFpp_t) \ + +typedef struct gnutls_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gnutls_my_t; + +void* getGnutlsMy(library_t* lib) +{ + gnutls_my_t* my = (gnutls_my_t*)calloc(1, sizeof(gnutls_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGnutlsMy(void* lib) +{ + //gnutls_my_t *my = (gnutls_my_t *)lib; +} + +// utility functions +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) \ +GO(4) + +// gnutls_log +#define GO(A) \ +static uintptr_t my_gnutls_log_fct_##A = 0; \ +static void my_gnutls_log_##A(int level, const char* p) \ +{ \ + RunFunction(my_context, my_gnutls_log_fct_##A, 2, level, p); \ +} +SUPER() +#undef GO +static void* find_gnutls_log_Fct(void* fct) +{ + if(!fct) return NULL; + void* p; + if((p = GetNativeFnc((uintptr_t)fct))) return p; + #define GO(A) if(my_gnutls_log_fct_##A == (uintptr_t)fct) return my_gnutls_log_##A; + SUPER() + #undef GO + #define GO(A) if(my_gnutls_log_fct_##A == 0) {my_gnutls_log_fct_##A = (uintptr_t)fct; return my_gnutls_log_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for libgnutls.so.30 gnutls_log callback\n"); + return NULL; +} + +// pullpush +#define GO(A) \ +static uintptr_t my_pullpush_fct_##A = 0; \ +static long my_pullpush_##A(void* p, void* d, size_t l) \ +{ \ + return (long)RunFunction(my_context, my_pullpush_fct_##A, 3, p, d, l); \ +} +SUPER() +#undef GO +static void* find_pullpush_Fct(void* fct) +{ + if(!fct) return NULL; + void* p; + if((p = GetNativeFnc((uintptr_t)fct))) return p; + #define GO(A) if(my_pullpush_fct_##A == (uintptr_t)fct) return my_pullpush_##A; + SUPER() + #undef GO + #define GO(A) if(my_pullpush_fct_##A == 0) {my_pullpush_fct_##A = (uintptr_t)fct; return my_pullpush_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for libgnutls.so.30 pullpush callback\n"); + return NULL; +} + +#undef SUPER + + +EXPORT void my_gnutls_global_set_log_function(x64emu_t* emu, void* f) +{ + gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2; + + my->gnutls_global_set_log_function(find_gnutls_log_Fct(f)); +} + +EXPORT void my_gnutls_transport_set_pull_function(x64emu_t* emu, void* session, void* f) +{ + gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2; + + my->gnutls_transport_set_pull_function(session, find_pullpush_Fct(f)); +} +EXPORT void my_gnutls_transport_set_push_function(x64emu_t* emu, void* session, void* f) +{ + gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2; + + my->gnutls_transport_set_push_function(session, find_pullpush_Fct(f)); +} + +#define CUSTOM_INIT \ + my_lib = lib; \ + lib->priv.w.p2 = getGnutlsMy(lib); + +#define CUSTOM_FINI \ + my_lib = NULL; \ + freeGnutlsMy(lib->priv.w.p2); \ + free(lib->priv.w.p2); + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappedgnutls_private.h b/src/wrapped/wrappedgnutls_private.h new file mode 100755 index 00000000..5dbba17b --- /dev/null +++ b/src/wrapped/wrappedgnutls_private.h @@ -0,0 +1,1117 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error Meh.... +#endif + +//GO(_dsa_generate_dss_g, +//GO(dsa_generate_dss_keypair, +//GO(_dsa_generate_dss_pq, +//GO(_dsa_validate_dss_g, +//GO(_dsa_validate_dss_pq, +//GO(gnutls_aead_cipher_decrypt, +//GO(gnutls_aead_cipher_deinit, +//GO(gnutls_aead_cipher_encrypt, +//GO(gnutls_aead_cipher_init, +GO(gnutls_alert_get, pFp) +GO(gnutls_alert_get_name, pFp) +//GO(gnutls_alert_get_strname, +//GO(gnutls_alert_send, +//GO(gnutls_alert_send_appropriate, +GO(gnutls_alpn_get_selected_protocol, iFpp) +GO(gnutls_alpn_set_protocols, iFppuu) +//GO(gnutls_anon_allocate_client_credentials, +//GO(gnutls_anon_allocate_server_credentials, +//GO(gnutls_anon_free_client_credentials, +//GO(gnutls_anon_free_server_credentials, +//GO(gnutls_anon_set_params_function, +//GO(gnutls_anon_set_server_dh_params, +//GO(gnutls_anon_set_server_known_dh_params, +//GO(gnutls_anon_set_server_params_function, +//GO(gnutls_auth_client_get_type, +//GO(gnutls_auth_get_type, +//GO(gnutls_auth_server_get_type, +//GO(_gnutls_bin2hex, +//GO(gnutls_buffer_append_data, +//GO(_gnutls_buffer_append_str, +//GO(_gnutls_buffer_init, +//GO(_gnutls_buffer_to_datum, +//GO(gnutls_bye, +//GO(gnutls_certificate_activation_time_peers, +GO(gnutls_certificate_allocate_credentials, iFp) +//GO(gnutls_certificate_client_get_request_status, +//GO(gnutls_certificate_expiration_time_peers, +//GO(gnutls_certificate_free_ca_names, +//GO(gnutls_certificate_free_cas, +GO(gnutls_certificate_free_credentials, vFp) +//GO(gnutls_certificate_free_crls, +//GO(gnutls_certificate_free_keys, +//GO(gnutls_certificate_get_crt_raw, +//GO(gnutls_certificate_get_issuer, +//GO(gnutls_certificate_get_openpgp_crt, +//GO(gnutls_certificate_get_openpgp_key, +//GO(gnutls_certificate_get_ours, +GO(gnutls_certificate_get_peers, pFpp) +//GO(gnutls_certificate_get_peers_subkey_id, +//GO(gnutls_certificate_get_trust_list, +//GO(gnutls_certificate_get_verify_flags, +//GO(gnutls_certificate_get_x509_crt, +//GO(gnutls_certificate_get_x509_key, +//GO(gnutls_certificate_send_x509_rdn_sequence, +//GO(gnutls_certificate_server_set_request, +//GO(gnutls_certificate_set_dh_params, +//GO(gnutls_certificate_set_flags, +//GO(gnutls_certificate_set_key, +//GO(gnutls_certificate_set_known_dh_params, +//GO(gnutls_certificate_set_ocsp_status_request_file, +//GO(gnutls_certificate_set_ocsp_status_request_function, +//GO(gnutls_certificate_set_ocsp_status_request_function2, +//GO(gnutls_certificate_set_openpgp_key, +//GO(gnutls_certificate_set_openpgp_key_file, +//GO(gnutls_certificate_set_openpgp_key_file2, +//GO(gnutls_certificate_set_openpgp_key_mem, +//GO(gnutls_certificate_set_openpgp_key_mem2, +//GO(gnutls_certificate_set_openpgp_keyring_file, +//GO(gnutls_certificate_set_openpgp_keyring_mem, +//GO(gnutls_certificate_set_params_function, +//GO(gnutls_certificate_set_pin_function, +//GO(gnutls_certificate_set_retrieve_function, +//GO(gnutls_certificate_set_retrieve_function2, +//GO(gnutls_certificate_set_trust_list, +//GO(gnutls_certificate_set_verify_flags, +//GO(gnutls_certificate_set_verify_function, +//GO(gnutls_certificate_set_verify_limits, +//GO(gnutls_certificate_set_x509_crl, +//GO(gnutls_certificate_set_x509_crl_file, +//GO(gnutls_certificate_set_x509_crl_mem, +GO(gnutls_certificate_set_x509_key, iFppip) +//GO(gnutls_certificate_set_x509_key_file, +//GO(gnutls_certificate_set_x509_key_file2, +//GO(gnutls_certificate_set_x509_key_mem, +//GO(gnutls_certificate_set_x509_key_mem2, +//GO(gnutls_certificate_set_x509_simple_pkcs12_file, +//GO(gnutls_certificate_set_x509_simple_pkcs12_mem, +//GO(gnutls_certificate_set_x509_system_trust, +//GO(gnutls_certificate_set_x509_trust, +//GO(gnutls_certificate_set_x509_trust_dir, +//GO(gnutls_certificate_set_x509_trust_file, +//GO(gnutls_certificate_set_x509_trust_mem, +//GO(gnutls_certificate_type_get, +//GO(gnutls_certificate_type_get_id, +//GO(gnutls_certificate_type_get_name, +//GO(gnutls_certificate_type_list, +//GO(gnutls_certificate_verification_status_print, +//GO(gnutls_certificate_verify_peers, +//GO(gnutls_certificate_verify_peers2, +//GO(gnutls_certificate_verify_peers3, +GO(gnutls_check_version, pFp) +//GO(_gnutls_cidr_to_string, +GO(gnutls_cipher_add_auth, iFppL) +GO(gnutls_cipher_decrypt, iFppL) +GO(gnutls_cipher_decrypt2, iFppLpL) +GO(gnutls_cipher_deinit, vFp) +GO(gnutls_cipher_encrypt, iFppL) +GO(gnutls_cipher_encrypt2, iFppLpL) +GO(gnutls_cipher_get, pFp) +GO(gnutls_cipher_get_block_size, uFp) +//GO(gnutls_cipher_get_id, +//GO(gnutls_cipher_get_iv_size, +GO(gnutls_cipher_get_key_size, LFp) +//GO(gnutls_cipher_get_name, +//GO(gnutls_cipher_get_tag_size, +GO(gnutls_cipher_init, iFpppp) +//GO(gnutls_cipher_list, +//GO(gnutls_cipher_set_iv, +//GO(gnutls_cipher_suite_get_name, +//GO(gnutls_cipher_suite_info, +GO(gnutls_cipher_tag, iFppL) +//GO(gnutls_compression_get, +//GO(gnutls_compression_get_id, +//GO(gnutls_compression_get_name, +//GO(gnutls_compression_list, +//GO(gnutls_credentials_clear, +//GO(gnutls_credentials_get, +GO(gnutls_credentials_set, iFppp) +//GO(gnutls_crypto_register_aead_cipher, +//GO(gnutls_crypto_register_cipher, +//GO(gnutls_crypto_register_digest, +//GO(gnutls_crypto_register_mac, +//GO(gnutls_db_check_entry, +//GO(gnutls_db_check_entry_time, +//GO(gnutls_db_get_default_cache_expiration, +//GO(gnutls_db_get_ptr, +//GO(gnutls_db_remove_session, +//GO(gnutls_db_set_cache_expiration, +//GO(gnutls_db_set_ptr, +//GO(gnutls_db_set_remove_function, +//GO(gnutls_db_set_retrieve_function, +//GO(gnutls_db_set_store_function, +GO(gnutls_decode_rs_value, iFppp) // not always present +//GO(gnutls_decode_ber_digest_info, +//GO(_gnutls_decode_ber_rs_raw, +GO(gnutls_deinit, vFp) +//GO(gnutls_dh_get_group, +//GO(gnutls_dh_get_peers_public_bits, +//GO(gnutls_dh_get_prime_bits, +//GO(gnutls_dh_get_pubkey, +//GO(gnutls_dh_get_secret_bits, +//GO(gnutls_dh_params_cpy, +//GO(gnutls_dh_params_deinit, +//GO(gnutls_dh_params_export2_pkcs3, +//GO(gnutls_dh_params_export_pkcs3, +//GO(gnutls_dh_params_export_raw, +//GO(gnutls_dh_params_generate2, +//GO(gnutls_dh_params_import_dsa, +//GO(gnutls_dh_params_import_pkcs3, +//GO(gnutls_dh_params_import_raw, +//GO(gnutls_dh_params_import_raw2, +//GO(gnutls_dh_params_init, +//GO(gnutls_dh_set_prime_bits, +//GO(_gnutls_digest_exists, +//GO(gnutls_digest_get_id, +//GO(gnutls_digest_get_name, +//GO(gnutls_digest_get_oid, +//GO(gnutls_digest_list, +//GO(gnutls_dtls_cookie_send, +//GO(gnutls_dtls_cookie_verify, +//GO(gnutls_dtls_get_data_mtu, +//GO(gnutls_dtls_get_mtu, +//GO(gnutls_dtls_get_timeout, +//GO(gnutls_dtls_prestate_set, +//GO(gnutls_dtls_set_data_mtu, +//GO(gnutls_dtls_set_mtu, +//GO(gnutls_dtls_set_timeouts, +//GO(gnutls_ecc_curve_get, +//GO(gnutls_ecc_curve_get_id, +//GO(gnutls_ecc_curve_get_name, +//GO(gnutls_ecc_curve_get_oid, +//GO(gnutls_ecc_curve_get_pk, +//GO(gnutls_ecc_curve_get_size, +//GO(gnutls_ecc_curve_list, +//GO(gnutls_encode_ber_digest_info, +//GO(_gnutls_encode_ber_rs_raw, +//GO(gnutls_error_is_fatal, +//GO(gnutls_error_to_alert, +//GO(gnutls_est_record_overhead_size, +//GO(gnutls_ext_get_data, +//GO(gnutls_ext_get_name, +//GO(gnutls_ext_register, +//GO(gnutls_ext_set_data, +//GO(gnutls_fingerprint, +//GO(gnutls_fips140_mode_enabled, +GO(gnutls_global_deinit, vFv) +GO(gnutls_global_init, iFv) +//GO(gnutls_global_set_audit_log_function, +GOM(gnutls_global_set_log_function, vFEp) +GO(gnutls_global_set_log_level, vFi) +//GO(gnutls_global_set_mem_functions, +//GO(gnutls_global_set_mutex, +//GO(gnutls_global_set_time_function, +GO(gnutls_handshake, iFp) +//GO(gnutls_handshake_description_get_name, +//GO(gnutls_handshake_get_last_in, +//GO(gnutls_handshake_get_last_out, +//GO(gnutls_handshake_set_hook_function, +//GO(gnutls_handshake_set_max_packet_length, +//GO(gnutls_handshake_set_post_client_hello_function, +//GO(gnutls_handshake_set_private_extensions, +//GO(gnutls_handshake_set_random, +//GO(gnutls_handshake_set_timeout, +//GO(gnutls_hash, +//GO(gnutls_hash_deinit, +//GO(gnutls_hash_fast, +//GO(gnutls_hash_get_len, +//GO(gnutls_hash_init, +//GO(gnutls_hash_output, +//GO(gnutls_heartbeat_allowed, +//GO(gnutls_heartbeat_enable, +//GO(gnutls_heartbeat_get_timeout, +//GO(gnutls_heartbeat_ping, +//GO(gnutls_heartbeat_pong, +//GO(gnutls_heartbeat_set_timeouts, +//GO(_gnutls_hello_set_default_version, +//GO(gnutls_hex2bin, +//GO(gnutls_hex_decode, +//GO(gnutls_hex_decode2, +//GO(gnutls_hex_encode, +//GO(gnutls_hex_encode2, +//GO(gnutls_hmac, +//GO(gnutls_hmac_deinit, +//GO(gnutls_hmac_fast, +//GO(gnutls_hmac_get_len, +//GO(gnutls_hmac_init, +//GO(gnutls_hmac_output, +//GO(gnutls_hmac_set_nonce, +//GO(gnutls_idna_map, +//GO(gnutls_idna_reverse_map, +GO(gnutls_init, iFpu) +//GO(_gnutls_ip_to_string, +//GO(gnutls_key_generate, +GO(gnutls_kx_get, pFp) +//GO(gnutls_kx_get_id, +//GO(gnutls_kx_get_name, +//GO(gnutls_kx_list, +//GO(_gnutls_lib_simulate_error, +//GO(gnutls_load_file, +//GO(_gnutls_log, +GO(gnutls_mac_get, pFp) +//GO(gnutls_mac_get_id, +GO(gnutls_mac_get_key_size, LFp) +//GO(gnutls_mac_get_name, +//GO(gnutls_mac_get_nonce_size, +//GO(gnutls_mac_list, +//GO(_gnutls_mac_to_entry, +//GO(gnutls_memcmp, +//GO(gnutls_memset, +//GO(_gnutls_mpi_log, +//GO(gnutls_ocsp_req_add_cert, +//GO(gnutls_ocsp_req_add_cert_id, +//GO(gnutls_ocsp_req_deinit, +//GO(gnutls_ocsp_req_export, +//GO(gnutls_ocsp_req_get_cert_id, +//GO(gnutls_ocsp_req_get_extension, +//GO(gnutls_ocsp_req_get_nonce, +//GO(gnutls_ocsp_req_get_version, +//GO(gnutls_ocsp_req_import, +//GO(gnutls_ocsp_req_init, +//GO(gnutls_ocsp_req_print, +//GO(gnutls_ocsp_req_randomize_nonce, +//GO(gnutls_ocsp_req_set_extension, +//GO(gnutls_ocsp_req_set_nonce, +//GO(gnutls_ocsp_resp_check_crt, +//GO(gnutls_ocsp_resp_deinit, +//GO(gnutls_ocsp_resp_export, +//GO(gnutls_ocsp_resp_get_certs, +//GO(gnutls_ocsp_resp_get_extension, +//GO(gnutls_ocsp_resp_get_nonce, +//GO(gnutls_ocsp_resp_get_produced, +//GO(gnutls_ocsp_resp_get_responder, +//GO(gnutls_ocsp_resp_get_responder2, +//GO(gnutls_ocsp_resp_get_responder_raw_id, +//GO(gnutls_ocsp_resp_get_response, +//GO(gnutls_ocsp_resp_get_signature, +//GO(gnutls_ocsp_resp_get_signature_algorithm, +//GO(gnutls_ocsp_resp_get_single, +//GO(gnutls_ocsp_resp_get_status, +//GO(gnutls_ocsp_resp_get_version, +//GO(gnutls_ocsp_resp_import, +//GO(gnutls_ocsp_resp_init, +//GO(gnutls_ocsp_resp_print, +//GO(gnutls_ocsp_resp_verify, +//GO(gnutls_ocsp_resp_verify_direct, +//GO(gnutls_ocsp_status_request_enable_client, +//GO(gnutls_ocsp_status_request_get, +//GO(gnutls_ocsp_status_request_is_checked, +//GO(gnutls_oid_to_digest, +//GO(gnutls_oid_to_ecc_curve, +//GO(gnutls_oid_to_mac, +//GO(gnutls_oid_to_pk, +//GO(gnutls_oid_to_sign, +//GO(gnutls_openpgp_crt_check_email, +//GO(gnutls_openpgp_crt_check_hostname, +//GO(gnutls_openpgp_crt_check_hostname2, +//GO(gnutls_openpgp_crt_deinit, +//GO(gnutls_openpgp_crt_export, +//GO(gnutls_openpgp_crt_export2, +//GO(gnutls_openpgp_crt_get_auth_subkey, +//GO(gnutls_openpgp_crt_get_creation_time, +//GO(gnutls_openpgp_crt_get_expiration_time, +//GO(gnutls_openpgp_crt_get_fingerprint, +//GO(gnutls_openpgp_crt_get_key_id, +//GO(gnutls_openpgp_crt_get_key_usage, +//GO(gnutls_openpgp_crt_get_name, +//GO(gnutls_openpgp_crt_get_pk_algorithm, +//GO(gnutls_openpgp_crt_get_pk_dsa_raw, +//GO(gnutls_openpgp_crt_get_pk_rsa_raw, +//GO(gnutls_openpgp_crt_get_preferred_key_id, +//GO(gnutls_openpgp_crt_get_revoked_status, +//GO(gnutls_openpgp_crt_get_subkey_count, +//GO(gnutls_openpgp_crt_get_subkey_creation_time, +//GO(gnutls_openpgp_crt_get_subkey_expiration_time, +//GO(gnutls_openpgp_crt_get_subkey_fingerprint, +//GO(gnutls_openpgp_crt_get_subkey_id, +//GO(gnutls_openpgp_crt_get_subkey_idx, +//GO(gnutls_openpgp_crt_get_subkey_pk_algorithm, +//GO(gnutls_openpgp_crt_get_subkey_pk_dsa_raw, +//GO(gnutls_openpgp_crt_get_subkey_pk_rsa_raw, +//GO(gnutls_openpgp_crt_get_subkey_revoked_status, +//GO(gnutls_openpgp_crt_get_subkey_usage, +//GO(gnutls_openpgp_crt_get_version, +//GO(gnutls_openpgp_crt_import, +//GO(gnutls_openpgp_crt_init, +//GO(gnutls_openpgp_crt_print, +//GO(gnutls_openpgp_crt_set_preferred_key_id, +//GO(gnutls_openpgp_crt_verify_ring, +//GO(gnutls_openpgp_crt_verify_self, +//GO(gnutls_openpgp_keyring_check_id, +//GO(gnutls_openpgp_keyring_deinit, +//GO(gnutls_openpgp_keyring_get_crt, +//GO(gnutls_openpgp_keyring_get_crt_count, +//GO(gnutls_openpgp_keyring_import, +//GO(gnutls_openpgp_keyring_init, +//GO(gnutls_openpgp_privkey_deinit, +//GO(gnutls_openpgp_privkey_export, +//GO(gnutls_openpgp_privkey_export2, +//GO(gnutls_openpgp_privkey_export_dsa_raw, +//GO(gnutls_openpgp_privkey_export_rsa_raw, +//GO(gnutls_openpgp_privkey_export_subkey_dsa_raw, +//GO(gnutls_openpgp_privkey_export_subkey_rsa_raw, +//GO(gnutls_openpgp_privkey_get_fingerprint, +//GO(gnutls_openpgp_privkey_get_key_id, +//GO(gnutls_openpgp_privkey_get_pk_algorithm, +//GO(gnutls_openpgp_privkey_get_preferred_key_id, +//GO(gnutls_openpgp_privkey_get_revoked_status, +//GO(gnutls_openpgp_privkey_get_subkey_count, +//GO(gnutls_openpgp_privkey_get_subkey_creation_time, +//GO(gnutls_openpgp_privkey_get_subkey_expiration_time, +//GO(gnutls_openpgp_privkey_get_subkey_fingerprint, +//GO(gnutls_openpgp_privkey_get_subkey_id, +//GO(gnutls_openpgp_privkey_get_subkey_idx, +//GO(gnutls_openpgp_privkey_get_subkey_pk_algorithm, +//GO(gnutls_openpgp_privkey_get_subkey_revoked_status, +//GO(gnutls_openpgp_privkey_import, +//GO(gnutls_openpgp_privkey_init, +//GO(gnutls_openpgp_privkey_sec_param, +//GO(gnutls_openpgp_privkey_set_preferred_key_id, +//GO(gnutls_openpgp_privkey_sign_hash, +//GO(gnutls_openpgp_send_cert, +//GO(gnutls_openpgp_set_recv_key_function, +//GO(gnutls_packet_deinit, +//GO(gnutls_packet_get, +//GO(gnutls_pcert_deinit, +//GO(gnutls_pcert_export_openpgp, +//GO(gnutls_pcert_export_x509, +//GO(gnutls_pcert_import_openpgp, +//GO(gnutls_pcert_import_openpgp_raw, +//GO(gnutls_pcert_import_x509, +//GO(gnutls_pcert_import_x509_list, +//GO(gnutls_pcert_import_x509_raw, +//GO(gnutls_pcert_list_import_x509_raw, +//GO(gnutls_pem_base64_decode, +//GO(gnutls_pem_base64_decode2, +//GO(gnutls_pem_base64_encode, +//GO(gnutls_pem_base64_encode2, +GO(gnutls_perror, vFi) +//GO(gnutls_pk_algorithm_get_name, +//GO(gnutls_pk_bits_to_sec_param, +//GO(gnutls_pkcs11_add_provider, +//GO(gnutls_pkcs11_copy_attached_extension, +//GO(gnutls_pkcs11_copy_pubkey, +//GO(gnutls_pkcs11_copy_secret_key, +//GO(gnutls_pkcs11_copy_x509_crt2, +//GO(gnutls_pkcs11_copy_x509_privkey2, +//GO(gnutls_pkcs11_crt_is_known, +//GO(gnutls_pkcs11_deinit, +//GO(gnutls_pkcs11_delete_url, +//GO(gnutls_pkcs11_get_pin_function, +//GO(gnutls_pkcs11_get_raw_issuer, +//GO(gnutls_pkcs11_get_raw_issuer_by_dn, +//GO(gnutls_pkcs11_get_raw_issuer_by_subject_key_id, +//GO(gnutls_pkcs11_init, +//GO(gnutls_pkcs11_obj_deinit, +//GO(gnutls_pkcs11_obj_export, +//GO(gnutls_pkcs11_obj_export2, +//GO(gnutls_pkcs11_obj_export3, +//GO(gnutls_pkcs11_obj_export_url, +//GO(gnutls_pkcs11_obj_flags_get_str, +//GO(gnutls_pkcs11_obj_get_exts, +//GO(gnutls_pkcs11_obj_get_flags, +//GO(gnutls_pkcs11_obj_get_info, +//GO(gnutls_pkcs11_obj_get_type, +//GO(gnutls_pkcs11_obj_import_url, +//GO(gnutls_pkcs11_obj_init, +//GO(gnutls_pkcs11_obj_list_import_url3, +//GO(gnutls_pkcs11_obj_list_import_url4, +//GO(gnutls_pkcs11_obj_set_info, +//GO(gnutls_pkcs11_obj_set_pin_function, +//GO(gnutls_pkcs11_privkey_cpy, +//GO(gnutls_pkcs11_privkey_deinit, +//GO(gnutls_pkcs11_privkey_export_pubkey, +//GO(gnutls_pkcs11_privkey_export_url, +//GO(gnutls_pkcs11_privkey_generate3, +//GO(gnutls_pkcs11_privkey_get_info, +//GO(gnutls_pkcs11_privkey_get_pk_algorithm, +//GO(gnutls_pkcs11_privkey_import_url, +//GO(gnutls_pkcs11_privkey_init, +//GO(gnutls_pkcs11_privkey_set_pin_function, +//GO(gnutls_pkcs11_privkey_status, +//GO(gnutls_pkcs11_reinit, +//GO(gnutls_pkcs11_set_pin_function, +//GO(gnutls_pkcs11_set_token_function, +//GO(gnutls_pkcs11_token_get_flags, +//GO(gnutls_pkcs11_token_get_info, +//GO(gnutls_pkcs11_token_get_mechanism, +//GO(gnutls_pkcs11_token_get_random, +//GO(gnutls_pkcs11_token_get_url, +//GO(gnutls_pkcs11_token_init, +//GO(gnutls_pkcs11_token_set_pin, +//GO(gnutls_pkcs11_type_get_name, +//GO(gnutls_pkcs12_bag_decrypt, +//GO(gnutls_pkcs12_bag_deinit, +//GO(gnutls_pkcs12_bag_enc_info, +//GO(gnutls_pkcs12_bag_encrypt, +//GO(gnutls_pkcs12_bag_get_count, +//GO(gnutls_pkcs12_bag_get_data, +//GO(gnutls_pkcs12_bag_get_friendly_name, +//GO(gnutls_pkcs12_bag_get_key_id, +//GO(gnutls_pkcs12_bag_get_type, +//GO(gnutls_pkcs12_bag_init, +//GO(gnutls_pkcs12_bag_set_crl, +//GO(gnutls_pkcs12_bag_set_crt, +//GO(gnutls_pkcs12_bag_set_data, +//GO(gnutls_pkcs12_bag_set_friendly_name, +//GO(gnutls_pkcs12_bag_set_key_id, +//GO(gnutls_pkcs12_bag_set_privkey, +GO(gnutls_pkcs12_deinit, vFp) +//GO(gnutls_pkcs12_export, +//GO(gnutls_pkcs12_export2, +//GO(gnutls_pkcs12_generate_mac, +//GO(gnutls_pkcs12_generate_mac2, +//GO(gnutls_pkcs12_get_bag, +GO(gnutls_pkcs12_import, iFpppu) +GO(gnutls_pkcs12_init, iFp) +//GO(gnutls_pkcs12_mac_info, +//GO(gnutls_pkcs12_set_bag, +GO(gnutls_pkcs12_simple_parse, iFppppppppu) +//GO(_gnutls_pkcs12_string_to_key, +//GO(gnutls_pkcs12_verify_mac, +//GO(gnutls_pkcs7_add_attr, +//GO(gnutls_pkcs7_attrs_deinit, +//GO(gnutls_pkcs7_deinit, +//GO(gnutls_pkcs7_delete_crl, +//GO(gnutls_pkcs7_delete_crt, +//GO(gnutls_pkcs7_export, +//GO(gnutls_pkcs7_export2, +//GO(gnutls_pkcs7_get_attr, +//GO(gnutls_pkcs7_get_crl_count, +//GO(gnutls_pkcs7_get_crl_raw, +//GO(gnutls_pkcs7_get_crl_raw2, +//GO(gnutls_pkcs7_get_crt_count, +//GO(gnutls_pkcs7_get_crt_raw, +//GO(gnutls_pkcs7_get_crt_raw2, +//GO(gnutls_pkcs7_get_embedded_data, +//GO(gnutls_pkcs7_get_embedded_data_oid, +//GO(gnutls_pkcs7_get_signature_count, +//GO(gnutls_pkcs7_get_signature_info, +//GO(gnutls_pkcs7_import, +//GO(gnutls_pkcs7_init, +//GO(gnutls_pkcs7_print, +//GO(gnutls_pkcs7_set_crl, +//GO(gnutls_pkcs7_set_crl_raw, +//GO(gnutls_pkcs7_set_crt, +//GO(gnutls_pkcs7_set_crt_raw, +//GO(gnutls_pkcs7_sign, +//GO(gnutls_pkcs7_signature_info_deinit, +//GO(gnutls_pkcs7_verify, +//GO(gnutls_pkcs7_verify_direct, +//GO(gnutls_pkcs8_info, +//GO(gnutls_pkcs_schema_get_name, +//GO(gnutls_pkcs_schema_get_oid, +//GO(gnutls_pk_get_id, +//GO(gnutls_pk_get_name, +//GO(gnutls_pk_get_oid, +//GO(gnutls_pk_list, +GO(gnutls_pk_to_sign, pFpp) +//GO(gnutls_prf, +//GO(gnutls_prf_raw, +//GO(gnutls_prf_rfc5705, +//GO(gnutls_priority_certificate_type_list, +//GO(gnutls_priority_cipher_list, +//GO(gnutls_priority_compression_list, +//GO(gnutls_priority_deinit, +//GO(gnutls_priority_ecc_curve_list, +//GO(gnutls_priority_get_cipher_suite_index, +//GO(gnutls_priority_init, +//GO(gnutls_priority_kx_list, +//GO(gnutls_priority_mac_list, +//GO(gnutls_priority_protocol_list, +//GO(gnutls_priority_set, +GO(gnutls_priority_set_direct, iFppp) +//GO(gnutls_priority_sign_list, +//GO(gnutls_priority_string_list, +//GO(gnutls_privkey_decrypt_data, +GO(gnutls_privkey_deinit, vFp) +GO(gnutls_privkey_export_dsa_raw, iFpppppp) +GO(gnutls_privkey_export_ecc_raw, iFppppp) +//GO(gnutls_privkey_export_openpgp, +//GO(gnutls_privkey_export_pkcs11, +GO(gnutls_privkey_export_rsa_raw, iFppppppppp) +GO(gnutls_privkey_export_x509, iFpp) +GO(gnutls_privkey_generate, iFppuu) +//GO(gnutls_privkey_generate2, +//GO(gnutls_privkey_get_pk_algorithm, +//GO(gnutls_privkey_get_seed, +//GO(gnutls_privkey_get_type, +GO(gnutls_privkey_import_dsa_raw, iFpppppp) +GO(gnutls_privkey_import_ecc_raw, iFppppp) +//GO(gnutls_privkey_import_ext, +//GO(gnutls_privkey_import_ext2, +//GO(gnutls_privkey_import_ext3, +//GO(gnutls_privkey_import_openpgp, +//GO(gnutls_privkey_import_openpgp_raw, +//GO(gnutls_privkey_import_pkcs11, +GO(gnutls_privkey_import_rsa_raw, iFppppppppp) +//GO(gnutls_privkey_import_tpm_raw, +//GO(gnutls_privkey_import_tpm_url, +//GO(gnutls_privkey_import_url, +//GO(gnutls_privkey_import_x509, +//GO(gnutls_privkey_import_x509_raw, +GO(gnutls_privkey_init, iFp) +//GO(gnutls_privkey_set_flags, +//GO(gnutls_privkey_set_pin_function, +//GO(gnutls_privkey_sign_data, +GO(gnutls_privkey_sign_hash, iFppupp) +//GO(gnutls_privkey_status, +//GO(gnutls_privkey_verify_params, +//GO(gnutls_privkey_verify_seed, +//GO(gnutls_protocol_get_id, +//GO(gnutls_protocol_get_name, +GO(gnutls_protocol_get_version, iFp) +//GO(gnutls_protocol_list, +//GO(gnutls_psk_allocate_client_credentials, +//GO(gnutls_psk_allocate_server_credentials, +//GO(gnutls_psk_client_get_hint, +//GO(gnutls_psk_free_client_credentials, +//GO(gnutls_psk_free_server_credentials, +//GO(gnutls_psk_server_get_username, +//GO(gnutls_psk_set_client_credentials, +//GO(gnutls_psk_set_client_credentials_function, +//GO(gnutls_psk_set_params_function, +//GO(gnutls_psk_set_server_credentials_file, +//GO(gnutls_psk_set_server_credentials_function, +//GO(gnutls_psk_set_server_credentials_hint, +//GO(gnutls_psk_set_server_dh_params, +//GO(gnutls_psk_set_server_known_dh_params, +//GO(gnutls_psk_set_server_params_function, +GO(gnutls_pubkey_deinit, vFp) +//GO(gnutls_pubkey_encrypt_data, +//GO(gnutls_pubkey_export, +//GO(gnutls_pubkey_export2, +//GO(gnutls_pubkey_export_dsa_raw, +//GO(gnutls_pubkey_export_ecc_raw, +//GO(gnutls_pubkey_export_ecc_x962, +//GO(gnutls_pubkey_export_rsa_raw, +//GO(gnutls_pubkey_get_key_id, +//GO(gnutls_pubkey_get_key_usage, +//GO(gnutls_pubkey_get_openpgp_key_id, +//GO(gnutls_pubkey_get_pk_algorithm, +//GO(gnutls_pubkey_get_preferred_hash_algorithm, +//GO(gnutls_pubkey_import, +GO(gnutls_pubkey_import_dsa_raw, iFppppp) +GO(gnutls_pubkey_import_ecc_raw, iFpppp) +//GO(gnutls_pubkey_import_ecc_x962, +//GO(gnutls_pubkey_import_openpgp, +//GO(gnutls_pubkey_import_openpgp_raw, +//GO(gnutls_pubkey_import_pkcs11, +//GO(gnutls_pubkey_import_privkey, +GO(gnutls_pubkey_import_rsa_raw, iFppp) +//GO(gnutls_pubkey_import_tpm_raw, +//GO(gnutls_pubkey_import_tpm_url, +//GO(gnutls_pubkey_import_url, +//GO(gnutls_pubkey_import_x509, +//GO(gnutls_pubkey_import_x509_crq, +//GO(gnutls_pubkey_import_x509_raw, +GO(gnutls_pubkey_init, iFp) +//GO(gnutls_pubkey_print, +//GO(gnutls_pubkey_set_key_usage, +//GO(gnutls_pubkey_set_pin_function, +//GO(gnutls_pubkey_verify_data2, +GO(gnutls_pubkey_verify_hash2, iFppupp) +//GO(gnutls_pubkey_verify_params, +//GO(gnutls_random_art, +//GO(gnutls_range_split, +//GO(gnutls_record_can_use_length_hiding, +//GO(gnutls_record_check_corked, +//GO(gnutls_record_check_pending, +//GO(gnutls_record_cork, +//GO(gnutls_record_disable_padding, +//GO(gnutls_record_discard_queued, +//GO(gnutls_record_get_direction, +//GO(gnutls_record_get_discarded, +GO(gnutls_record_get_max_size, LFp) +//GO(gnutls_record_get_state, +//GO(gnutls_record_overhead_size, +GO(gnutls_record_recv, lFppL) +//GO(gnutls_record_recv_packet, +//GO(gnutls_record_recv_seq, +GO(gnutls_record_send, lFppL) +//GO(gnutls_record_send_range, +//GO(_gnutls_record_set_default_version, +//GO(gnutls_record_set_max_size, +//GO(gnutls_record_set_state, +//GO(gnutls_record_set_timeout, +//GO(gnutls_record_uncork, +//GO(gnutls_register_custom_url, +//GO(gnutls_rehandshake, +//GO(_gnutls_resolve_priorities, +//GO(gnutls_rnd, +//GO(gnutls_rnd_refresh, +//GO(_gnutls_rsa_pms_set_version, +//GO(gnutls_safe_renegotiation_status, +//GO(gnutls_sec_param_get_name, +//GO(gnutls_sec_param_to_pk_bits, +//GO(gnutls_sec_param_to_symmetric_bits, +//GO(gnutls_server_name_get, +GO(gnutls_server_name_set, iFpppL) +//GO(_gnutls_server_name_set_raw, +//GO(gnutls_session_channel_binding, +//GO(gnutls_session_enable_compatibility_mode, +//GO(gnutls_session_etm_status, +//GO(gnutls_session_ext_master_secret_status, +//GO(gnutls_session_ext_register, +//GO(gnutls_session_force_valid, +//GO(gnutls_session_get_data, +//GO(gnutls_session_get_data2, +//GO(gnutls_session_get_desc, +//GO(gnutls_session_get_flags, +//GO(gnutls_session_get_id, +//GO(gnutls_session_get_id2, +//GO(gnutls_session_get_master_secret, +//GO(gnutls_session_get_ptr, +//GO(gnutls_session_get_random, +//GO(gnutls_session_get_verify_cert_status, +//GO(gnutls_session_is_resumed, +//GO(gnutls_session_resumption_requested, +//GO(gnutls_session_set_data, +//GO(gnutls_session_set_id, +//GO(gnutls_session_set_premaster, +//GO(gnutls_session_set_ptr, +//GO(gnutls_session_set_verify_cert, +//GO(gnutls_session_set_verify_cert2, +//GO(gnutls_session_set_verify_function, +//GO(gnutls_session_supplemental_register, +//GO(gnutls_session_ticket_enable_client, +//GO(gnutls_session_ticket_enable_server, +//GO(gnutls_session_ticket_key_generate, +//GO(gnutls_set_default_priority, +//GO(gnutls_sign_algorithm_get, +//GO(gnutls_sign_algorithm_get_client, +//GO(gnutls_sign_algorithm_get_requested, +//GO(gnutls_sign_get_hash_algorithm, +//GO(gnutls_sign_get_id, +//GO(gnutls_sign_get_name, +//GO(gnutls_sign_get_oid, +//GO(gnutls_sign_get_pk_algorithm, +//GO(gnutls_sign_is_secure, +//GO(gnutls_sign_list, +//GO(gnutls_srp_allocate_client_credentials, +//GO(gnutls_srp_allocate_server_credentials, +//GO(gnutls_srp_base64_decode, +//GO(gnutls_srp_base64_decode2, +//GO(gnutls_srp_base64_encode, +//GO(gnutls_srp_base64_encode2, +//GO(gnutls_srp_free_client_credentials, +//GO(gnutls_srp_free_server_credentials, +//GO(gnutls_srp_server_get_username, +//GO(gnutls_srp_set_client_credentials, +//GO(gnutls_srp_set_client_credentials_function, +//GO(gnutls_srp_set_prime_bits, +//GO(gnutls_srp_set_server_credentials_file, +//GO(gnutls_srp_set_server_credentials_function, +//GO(gnutls_srp_set_server_fake_salt_seed, +//GO(gnutls_srp_verifier, +//GO(gnutls_srtp_get_keys, +//GO(gnutls_srtp_get_mki, +//GO(gnutls_srtp_get_profile_id, +//GO(gnutls_srtp_get_profile_name, +//GO(gnutls_srtp_get_selected_profile, +//GO(gnutls_srtp_set_mki, +//GO(gnutls_srtp_set_profile, +//GO(gnutls_srtp_set_profile_direct, +//GO(gnutls_store_commitment, +//GO(gnutls_store_pubkey, +//GO(gnutls_strerror, +//GO(gnutls_strerror_name, +//GO(gnutls_subject_alt_names_deinit, +//GO(gnutls_subject_alt_names_get, +//GO(gnutls_subject_alt_names_init, +//GO(gnutls_subject_alt_names_set, +//GO(gnutls_supplemental_get_name, +//GO(gnutls_supplemental_recv, +//GO(gnutls_supplemental_register, +//GO(gnutls_supplemental_send, +//GO(gnutls_system_key_add_x509, +//GO(gnutls_system_key_delete, +//GO(gnutls_system_key_iter_deinit, +//GO(gnutls_system_key_iter_get_info, +//GO(gnutls_system_recv_timeout, +//GO(gnutls_tdb_deinit, +//GO(gnutls_tdb_init, +//GO(gnutls_tdb_set_store_commitment_func, +//GO(gnutls_tdb_set_store_func, +//GO(gnutls_tdb_set_verify_func, +//GO(gnutls_tpm_get_registered, +//GO(gnutls_tpm_key_list_deinit, +//GO(gnutls_tpm_key_list_get_url, +//GO(gnutls_tpm_privkey_delete, +//GO(gnutls_tpm_privkey_generate, +//GO(gnutls_transport_get_int, +//GO(gnutls_transport_get_int2, +GO(gnutls_transport_get_ptr, pFp) +//GO(gnutls_transport_get_ptr2, +GO(gnutls_transport_set_errno, vFpi) +//GO(gnutls_transport_set_errno_function, +//GO(gnutls_transport_set_fastopen, +//GO(gnutls_transport_set_int2, +GO(gnutls_transport_set_ptr, vFpp) +//GO(gnutls_transport_set_ptr2, +GOM(gnutls_transport_set_pull_function, vFEpp) +//GO(gnutls_transport_set_pull_timeout_function, +GOM(gnutls_transport_set_push_function, vFEpp) +//GO(gnutls_transport_set_vec_push_function, +//GO(_gnutls_ucs2_to_utf8, +//GO(gnutls_url_is_supported, +//GO(gnutls_utf8_password_normalize, +//GO(_gnutls_utf8_to_ucs2, +//GO(gnutls_verify_stored_pubkey, +//GO(gnutls_x509_aia_deinit, +//GO(gnutls_x509_aia_get, +//GO(gnutls_x509_aia_init, +//GO(gnutls_x509_aia_set, +//GO(gnutls_x509_aki_deinit, +//GO(gnutls_x509_aki_get_cert_issuer, +//GO(gnutls_x509_aki_get_id, +//GO(gnutls_x509_aki_init, +//GO(gnutls_x509_aki_set_cert_issuer, +//GO(gnutls_x509_aki_set_id, +//GO(gnutls_x509_cidr_to_rfc5280, +//GO(gnutls_x509_crl_check_issuer, +//GO(gnutls_x509_crl_deinit, +//GO(gnutls_x509_crl_dist_points_deinit, +//GO(gnutls_x509_crl_dist_points_get, +//GO(gnutls_x509_crl_dist_points_init, +//GO(gnutls_x509_crl_dist_points_set, +//GO(gnutls_x509_crl_export, +//GO(gnutls_x509_crl_export2, +//GO(gnutls_x509_crl_get_authority_key_gn_serial, +//GO(gnutls_x509_crl_get_authority_key_id, +//GO(gnutls_x509_crl_get_crt_count, +//GO(gnutls_x509_crl_get_crt_serial, +//GO(gnutls_x509_crl_get_dn_oid, +//GO(gnutls_x509_crl_get_extension_data, +//GO(gnutls_x509_crl_get_extension_data2, +//GO(gnutls_x509_crl_get_extension_info, +//GO(gnutls_x509_crl_get_extension_oid, +//GO(gnutls_x509_crl_get_issuer_dn, +//GO(gnutls_x509_crl_get_issuer_dn2, +//GO(gnutls_x509_crl_get_issuer_dn3, +//GO(gnutls_x509_crl_get_issuer_dn_by_oid, +//GO(gnutls_x509_crl_get_next_update, +//GO(gnutls_x509_crl_get_number, +//GO(gnutls_x509_crl_get_raw_issuer_dn, +//GO(gnutls_x509_crl_get_signature, +//GO(gnutls_x509_crl_get_signature_algorithm, +//GO(gnutls_x509_crl_get_signature_oid, +//GO(gnutls_x509_crl_get_this_update, +//GO(gnutls_x509_crl_get_version, +//GO(gnutls_x509_crl_import, +//GO(gnutls_x509_crl_init, +//GO(gnutls_x509_crl_iter_crt_serial, +//GO(gnutls_x509_crl_iter_deinit, +//GO(gnutls_x509_crl_list_import, +//GO(gnutls_x509_crl_list_import2, +//GO(gnutls_x509_crl_print, +//GO(gnutls_x509_crl_privkey_sign, +//GO(gnutls_x509_crl_set_authority_key_id, +//GO(gnutls_x509_crl_set_crt, +//GO(gnutls_x509_crl_set_crt_serial, +//GO(gnutls_x509_crl_set_next_update, +//GO(gnutls_x509_crl_set_number, +//GO(gnutls_x509_crl_set_this_update, +//GO(gnutls_x509_crl_set_version, +//GO(gnutls_x509_crl_sign, +//GO(gnutls_x509_crl_sign2, +//GO(gnutls_x509_crl_verify, +//GO(gnutls_x509_crq_deinit, +//GO(gnutls_x509_crq_export, +//GO(gnutls_x509_crq_export2, +//GO(gnutls_x509_crq_get_attribute_by_oid, +//GO(gnutls_x509_crq_get_attribute_data, +//GO(gnutls_x509_crq_get_attribute_info, +//GO(gnutls_x509_crq_get_basic_constraints, +//GO(gnutls_x509_crq_get_challenge_password, +//GO(gnutls_x509_crq_get_dn, +//GO(gnutls_x509_crq_get_dn2, +//GO(gnutls_x509_crq_get_dn3, +//GO(gnutls_x509_crq_get_dn_by_oid, +//GO(gnutls_x509_crq_get_dn_oid, +//GO(gnutls_x509_crq_get_extension_by_oid, +//GO(gnutls_x509_crq_get_extension_by_oid2, +//GO(gnutls_x509_crq_get_extension_data, +//GO(gnutls_x509_crq_get_extension_data2, +//GO(gnutls_x509_crq_get_extension_info, +//GO(gnutls_x509_crq_get_key_id, +//GO(gnutls_x509_crq_get_key_purpose_oid, +//GO(gnutls_x509_crq_get_key_rsa_raw, +//GO(gnutls_x509_crq_get_key_usage, +//GO(gnutls_x509_crq_get_pk_algorithm, +//GO(gnutls_x509_crq_get_pk_oid, +//GO(gnutls_x509_crq_get_private_key_usage_period, +//GO(gnutls_x509_crq_get_signature_algorithm, +//GO(gnutls_x509_crq_get_signature_oid, +//GO(gnutls_x509_crq_get_subject_alt_name, +//GO(gnutls_x509_crq_get_subject_alt_othername_oid, +//GO(gnutls_x509_crq_get_tlsfeatures, +//GO(gnutls_x509_crq_get_version, +//GO(gnutls_x509_crq_import, +//GO(gnutls_x509_crq_init, +//GO(gnutls_x509_crq_print, +//GO(gnutls_x509_crq_privkey_sign, +//GO(gnutls_x509_crq_set_attribute_by_oid, +//GO(gnutls_x509_crq_set_basic_constraints, +//GO(gnutls_x509_crq_set_challenge_password, +//GO(gnutls_x509_crq_set_dn, +//GO(gnutls_x509_crq_set_dn_by_oid, +//GO(gnutls_x509_crq_set_extension_by_oid, +//GO(gnutls_x509_crq_set_key, +//GO(gnutls_x509_crq_set_key_purpose_oid, +//GO(gnutls_x509_crq_set_key_rsa_raw, +//GO(gnutls_x509_crq_set_key_usage, +//GO(gnutls_x509_crq_set_private_key_usage_period, +//GO(gnutls_x509_crq_set_pubkey, +//GO(gnutls_x509_crq_set_subject_alt_name, +//GO(gnutls_x509_crq_set_subject_alt_othername, +//GO(gnutls_x509_crq_set_tlsfeatures, +//GO(gnutls_x509_crq_set_version, +//GO(gnutls_x509_crq_sign, +//GO(gnutls_x509_crq_sign2, +//GO(gnutls_x509_crq_verify, +//GO(gnutls_x509_crt_check_email, +//GO(gnutls_x509_crt_check_hostname, +//GO(gnutls_x509_crt_check_hostname2, +//GO(gnutls_x509_crt_check_issuer, +//GO(gnutls_x509_crt_check_key_purpose, +//GO(gnutls_x509_crt_check_revocation, +//GO(gnutls_x509_crt_cpy_crl_dist_points, +GO(gnutls_x509_crt_deinit, vFp) +//GO(gnutls_x509_crt_equals, +//GO(gnutls_x509_crt_equals2, +GO(gnutls_x509_crt_export, iFpppp) +//GO(gnutls_x509_crt_export2, +//GO(gnutls_x509_crt_get_activation_time, +//GO(gnutls_x509_crt_get_authority_info_access, +//GO(gnutls_x509_crt_get_authority_key_gn_serial, +//GO(gnutls_x509_crt_get_authority_key_id, +//GO(gnutls_x509_crt_get_basic_constraints, +//GO(gnutls_x509_crt_get_ca_status, +//GO(gnutls_x509_crt_get_crl_dist_points, +//GO(gnutls_x509_crt_get_dn, +//GO(gnutls_x509_crt_get_dn2, +//GO(gnutls_x509_crt_get_dn3, +//GO(gnutls_x509_crt_get_dn_by_oid, +//GO(gnutls_x509_crt_get_dn_oid, +//GO(gnutls_x509_crt_get_expiration_time, +//GO(gnutls_x509_crt_get_extension_by_oid, +//GO(gnutls_x509_crt_get_extension_by_oid2, +//GO(gnutls_x509_crt_get_extension_data, +//GO(gnutls_x509_crt_get_extension_data2, +//GO(gnutls_x509_crt_get_extension_info, +//GO(gnutls_x509_crt_get_extension_oid, +//GO(gnutls_x509_crt_get_fingerprint, +//GO(gnutls_x509_crt_get_issuer, +//GO(gnutls_x509_crt_get_issuer_alt_name, +//GO(gnutls_x509_crt_get_issuer_alt_name2, +//GO(gnutls_x509_crt_get_issuer_alt_othername_oid, +//GO(gnutls_x509_crt_get_issuer_dn, +//GO(gnutls_x509_crt_get_issuer_dn2, +//GO(gnutls_x509_crt_get_issuer_dn3, +//GO(gnutls_x509_crt_get_issuer_dn_by_oid, +//GO(gnutls_x509_crt_get_issuer_dn_oid, +//GO(gnutls_x509_crt_get_issuer_unique_id, +//GO(gnutls_x509_crt_get_key_id, +//GO(gnutls_x509_crt_get_key_purpose_oid, +//GO(gnutls_x509_crt_get_key_usage, +//GO(gnutls_x509_crt_get_name_constraints, +//GO(gnutls_x509_crt_get_pk_algorithm, +//GO(gnutls_x509_crt_get_pk_dsa_raw, +//GO(gnutls_x509_crt_get_pk_ecc_raw, +//GO(gnutls_x509_crt_get_pk_oid, +//GO(gnutls_x509_crt_get_pk_rsa_raw, +//GO(gnutls_x509_crt_get_policy, +//GO(gnutls_x509_crt_get_preferred_hash_algorithm, +//GO(gnutls_x509_crt_get_private_key_usage_period, +//GO(gnutls_x509_crt_get_proxy, +//GO(gnutls_x509_crt_get_raw_dn, +//GO(gnutls_x509_crt_get_raw_issuer_dn, +//GO(gnutls_x509_crt_get_serial, +//GO(gnutls_x509_crt_get_signature, +//GO(gnutls_x509_crt_get_signature_algorithm, +//GO(gnutls_x509_crt_get_signature_oid, +//GO(gnutls_x509_crt_get_subject, +//GO(gnutls_x509_crt_get_subject_alt_name, +//GO(gnutls_x509_crt_get_subject_alt_name2, +//GO(gnutls_x509_crt_get_subject_alt_othername_oid, +//GO(gnutls_x509_crt_get_subject_key_id, +//GO(gnutls_x509_crt_get_subject_unique_id, +//GO(gnutls_x509_crt_get_tlsfeatures, +//GO(gnutls_x509_crt_get_version, +GO(gnutls_x509_crt_import, iFppp) +//GO(gnutls_x509_crt_import_pkcs11, +//GO(gnutls_x509_crt_import_url, +GO(gnutls_x509_crt_init, iFp) +//GO(gnutls_x509_crt_list_import, +//GO(gnutls_x509_crt_list_import2, +//GO(gnutls_x509_crt_list_import_pkcs11, +//GO(gnutls_x509_crt_list_verify, +//GO(gnutls_x509_crt_print, +//GO(gnutls_x509_crt_privkey_sign, +//GO(gnutls_x509_crt_set_activation_time, +//GO(gnutls_x509_crt_set_authority_info_access, +//GO(gnutls_x509_crt_set_authority_key_id, +//GO(gnutls_x509_crt_set_basic_constraints, +//GO(gnutls_x509_crt_set_ca_status, +//GO(gnutls_x509_crt_set_crl_dist_points, +//GO(gnutls_x509_crt_set_crl_dist_points2, +//GO(gnutls_x509_crt_set_crq, +//GO(gnutls_x509_crt_set_crq_extension_by_oid, +//GO(gnutls_x509_crt_set_crq_extensions, +//GO(gnutls_x509_crt_set_dn, +//GO(gnutls_x509_crt_set_dn_by_oid, +//GO(gnutls_x509_crt_set_expiration_time, +//GO(gnutls_x509_crt_set_extension_by_oid, +//GO(gnutls_x509_crt_set_issuer_alt_name, +//GO(gnutls_x509_crt_set_issuer_alt_othername, +//GO(gnutls_x509_crt_set_issuer_dn, +//GO(gnutls_x509_crt_set_issuer_dn_by_oid, +//GO(gnutls_x509_crt_set_issuer_unique_id, +//GO(gnutls_x509_crt_set_key, +//GO(gnutls_x509_crt_set_key_purpose_oid, +//GO(gnutls_x509_crt_set_key_usage, +//GO(gnutls_x509_crt_set_name_constraints, +//GO(gnutls_x509_crt_set_pin_function, +//GO(gnutls_x509_crt_set_policy, +//GO(gnutls_x509_crt_set_private_key_usage_period, +//GO(gnutls_x509_crt_set_proxy, +//GO(gnutls_x509_crt_set_proxy_dn, +//GO(gnutls_x509_crt_set_pubkey, +//GO(gnutls_x509_crt_set_serial, +//GO(gnutls_x509_crt_set_subject_alternative_name, +//GO(gnutls_x509_crt_set_subject_alt_name, +//GO(gnutls_x509_crt_set_subject_alt_othername, +//GO(gnutls_x509_crt_set_subject_key_id, +//GO(gnutls_x509_crt_set_subject_unique_id, +//GO(gnutls_x509_crt_set_tlsfeatures, +//GO(gnutls_x509_crt_set_version, +//GO(gnutls_x509_crt_sign, +//GO(gnutls_x509_crt_sign2, +//GO(gnutls_x509_crt_verify, +//GO(gnutls_x509_crt_verify_data2, +//GO(gnutls_x509_dn_deinit, +//GO(gnutls_x509_dn_export, +//GO(gnutls_x509_dn_export2, +//GO(gnutls_x509_dn_get_rdn_ava, +//GO(gnutls_x509_dn_get_str, +//GO(gnutls_x509_dn_get_str2, +//GO(gnutls_x509_dn_import, +//GO(gnutls_x509_dn_init, +//GO(gnutls_x509_dn_oid_known, +//GO(gnutls_x509_dn_oid_name, +//GO(gnutls_x509_dn_set_str, +//GO(gnutls_x509_ext_deinit, +//GO(gnutls_x509_ext_export_aia, +//GO(gnutls_x509_ext_export_authority_key_id, +//GO(gnutls_x509_ext_export_basic_constraints, +//GO(gnutls_x509_ext_export_crl_dist_points, +//GO(gnutls_x509_ext_export_key_purposes, +//GO(gnutls_x509_ext_export_key_usage, +//GO(gnutls_x509_ext_export_name_constraints, +//GO(gnutls_x509_ext_export_policies, +//GO(gnutls_x509_ext_export_private_key_usage_period, +//GO(gnutls_x509_ext_export_proxy, +//GO(gnutls_x509_ext_export_subject_alt_names, +//GO(gnutls_x509_ext_export_subject_key_id, +//GO(gnutls_x509_ext_export_tlsfeatures, +//GO(gnutls_x509_ext_import_aia, +//GO(gnutls_x509_ext_import_authority_key_id, +//GO(gnutls_x509_ext_import_basic_constraints, +//GO(gnutls_x509_ext_import_crl_dist_points, +//GO(gnutls_x509_ext_import_key_purposes, +//GO(gnutls_x509_ext_import_key_usage, +//GO(gnutls_x509_ext_import_name_constraints, +//GO(gnutls_x509_ext_import_policies, +//GO(gnutls_x509_ext_import_private_key_usage_period, +//GO(gnutls_x509_ext_import_proxy, +//GO(gnutls_x509_ext_import_subject_alt_names, +//GO(gnutls_x509_ext_import_subject_key_id, +//GO(gnutls_x509_ext_import_tlsfeatures, +//GO(gnutls_x509_ext_print, +//GO(gnutls_x509_key_purpose_deinit, +//GO(gnutls_x509_key_purpose_get, +//GO(gnutls_x509_key_purpose_init, +//GO(gnutls_x509_key_purpose_set, +//GO(gnutls_x509_name_constraints_add_excluded, +//GO(gnutls_x509_name_constraints_add_permitted, +//GO(gnutls_x509_name_constraints_check, +//GO(gnutls_x509_name_constraints_check_crt, +//GO(gnutls_x509_name_constraints_deinit, +//GO(gnutls_x509_name_constraints_get_excluded, +//GO(gnutls_x509_name_constraints_get_permitted, +//GO(gnutls_x509_name_constraints_init, +//GO(_gnutls_x509_name_constraints_merge, +//GO(gnutls_x509_othername_to_virtual, +//GO(gnutls_x509_policies_deinit, +//GO(gnutls_x509_policies_get, +//GO(gnutls_x509_policies_init, +//GO(gnutls_x509_policies_set, +//GO(gnutls_x509_policy_release, +//GO(gnutls_x509_privkey_cpy, +GO(gnutls_x509_privkey_deinit, vFp) +//GO(gnutls_x509_privkey_export, +//GO(gnutls_x509_privkey_export2, +//GO(gnutls_x509_privkey_export2_pkcs8, +//GO(gnutls_x509_privkey_export_dsa_raw, +//GO(gnutls_x509_privkey_export_ecc_raw, +//GO(gnutls_x509_privkey_export_pkcs8, +//GO(gnutls_x509_privkey_export_rsa_raw, +GO(gnutls_x509_privkey_export_rsa_raw2, iFppppppppp) +//GO(gnutls_x509_privkey_fix, +//GO(gnutls_x509_privkey_generate, +//GO(gnutls_x509_privkey_generate2, +//GO(gnutls_x509_privkey_get_key_id, +//GO(gnutls_x509_privkey_get_pk_algorithm, +GO(gnutls_x509_privkey_get_pk_algorithm2, iFpp) +//GO(gnutls_x509_privkey_get_seed, +//GO(gnutls_x509_privkey_import, +//GO(gnutls_x509_privkey_import2, +//GO(gnutls_x509_privkey_import_dsa_raw, +//GO(gnutls_x509_privkey_import_ecc_raw, +//GO(gnutls_x509_privkey_import_openssl, +//GO(gnutls_x509_privkey_import_pkcs8, +//GO(gnutls_x509_privkey_import_rsa_raw, +//GO(gnutls_x509_privkey_import_rsa_raw2, +//GO(gnutls_x509_privkey_init, +//GO(gnutls_x509_privkey_sec_param, +//GO(gnutls_x509_privkey_set_flags, +//GO(gnutls_x509_privkey_set_pin_function, +//GO(gnutls_x509_privkey_sign_data, +//GO(gnutls_x509_privkey_sign_hash, +//GO(gnutls_x509_privkey_verify_params, +//GO(gnutls_x509_privkey_verify_seed, +//GO(gnutls_x509_rdn_get, +//GO(gnutls_x509_rdn_get2, +//GO(gnutls_x509_rdn_get_by_oid, +//GO(gnutls_x509_rdn_get_oid, +//GO(gnutls_x509_tlsfeatures_add, +//GO(gnutls_x509_tlsfeatures_check_crt, +//GO(gnutls_x509_tlsfeatures_deinit, +//GO(gnutls_x509_tlsfeatures_get, +//GO(gnutls_x509_tlsfeatures_init, +//GO(gnutls_x509_trust_list_add_cas, +//GO(gnutls_x509_trust_list_add_crls, +//GO(gnutls_x509_trust_list_add_named_crt, +//GO(gnutls_x509_trust_list_add_system_trust, +//GO(gnutls_x509_trust_list_add_trust_dir, +//GO(gnutls_x509_trust_list_add_trust_file, +//GO(gnutls_x509_trust_list_add_trust_mem, +//GO(gnutls_x509_trust_list_deinit, +//GO(gnutls_x509_trust_list_get_issuer, +//GO(gnutls_x509_trust_list_get_issuer_by_dn, +//GO(gnutls_x509_trust_list_get_issuer_by_subject_key_id, +//GO(gnutls_x509_trust_list_init, +//GO(gnutls_x509_trust_list_iter_deinit, +//GO(gnutls_x509_trust_list_iter_get_ca, +//GO(gnutls_x509_trust_list_remove_cas, +//GO(gnutls_x509_trust_list_remove_trust_file, +//GO(gnutls_x509_trust_list_remove_trust_mem, +//GO(gnutls_x509_trust_list_verify_crt, +//GO(gnutls_x509_trust_list_verify_crt2, +//GO(gnutls_x509_trust_list_verify_named_crt, +//GO(_rsa_generate_fips186_4_keypair, |