38 lines
788 B
C
38 lines
788 B
C
/*
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
#include "vagrant_ssl.h"
|
|
|
|
#if defined(_VAGRANT_SSL_PROVIDER_)
|
|
|
|
static VALUE vagrant_ssl_load(VALUE self) {
|
|
OSSL_PROVIDER *legacy;
|
|
OSSL_PROVIDER *deflt;
|
|
|
|
legacy = OSSL_PROVIDER_load(NULL, "legacy");
|
|
if(legacy == NULL) {
|
|
rb_raise(rb_eStandardError, "Failed to load OpenSSL legacy provider");
|
|
return self;
|
|
}
|
|
|
|
deflt = OSSL_PROVIDER_load(NULL, "default");
|
|
if(deflt == NULL) {
|
|
rb_raise(rb_eStandardError, "Failed to load OpenSSL default provider");
|
|
return self;
|
|
}
|
|
}
|
|
|
|
void Init_vagrant_ssl(void) {
|
|
VALUE vagrant;
|
|
vagrant = rb_define_module("Vagrant");
|
|
rb_define_singleton_method(vagrant, "vagrant_ssl_load", vagrant_ssl_load, 0);
|
|
}
|
|
|
|
#else
|
|
|
|
void Init_vagrant_ssl(void) {}
|
|
|
|
#endif
|