TLS: gnutls: use gnutls_certificate_set_x509_system_trust
Avoid hard-coding any paths and use the function which is portable across operating systems.
This commit is contained in:
parent
d4ec7135d2
commit
f37be6a1e4
2 changed files with 10 additions and 18 deletions
|
@ -11,19 +11,15 @@ if (ret != GNUTLS_E_SUCCESS) {
|
|||
gnutls_strerror(ret));
|
||||
exit(1);
|
||||
}
|
||||
// gnutls_certificate_set_x509_system_trust needs GNUTLS version 3.0
|
||||
// or newer, so we hard-code the path to the certificate store
|
||||
// instead.
|
||||
static const char ca_bundle[] = "/etc/ssl/certs/ca-bundle.crt";
|
||||
ret = gnutls_certificate_set_x509_trust_file
|
||||
(cred, ca_bundle, GNUTLS_X509_FMT_PEM);
|
||||
|
||||
ret = gnutls_certificate_set_x509_system_trust(cred);
|
||||
if (ret == 0) {
|
||||
fprintf(stderr, "error: no certificates found in: %s\n", ca_bundle);
|
||||
fprintf(stderr, "error: no certificates found in system trust store\n");
|
||||
exit(1);
|
||||
}
|
||||
if (ret < 0) {
|
||||
fprintf(stderr, "error: gnutls_certificate_set_x509_trust_files(%s): %s\n",
|
||||
ca_bundle, gnutls_strerror(ret));
|
||||
fprintf(stderr, "error: gnutls_certificate_set_x509_system_trust: %s\n",
|
||||
gnutls_strerror(ret));
|
||||
exit(1);
|
||||
}
|
||||
</programlisting>
|
||||
|
|
|
@ -98,19 +98,15 @@ main(int argc, char **argv)
|
|||
gnutls_strerror(ret));
|
||||
exit(1);
|
||||
}
|
||||
// gnutls_certificate_set_x509_system_trust needs GNUTLS version 3.0
|
||||
// or newer, so we hard-code the path to the certificate store
|
||||
// instead.
|
||||
static const char ca_bundle[] = "/etc/ssl/certs/ca-bundle.crt";
|
||||
ret = gnutls_certificate_set_x509_trust_file
|
||||
(cred, ca_bundle, GNUTLS_X509_FMT_PEM);
|
||||
|
||||
ret = gnutls_certificate_set_x509_system_trust(cred);
|
||||
if (ret == 0) {
|
||||
fprintf(stderr, "error: no certificates found in: %s\n", ca_bundle);
|
||||
fprintf(stderr, "error: no certificates found in system trust store\n");
|
||||
exit(1);
|
||||
}
|
||||
if (ret < 0) {
|
||||
fprintf(stderr, "error: gnutls_certificate_set_x509_trust_files(%s): %s\n",
|
||||
ca_bundle, gnutls_strerror(ret));
|
||||
fprintf(stderr, "error: gnutls_certificate_set_x509_system_trust: %s\n",
|
||||
gnutls_strerror(ret));
|
||||
exit(1);
|
||||
}
|
||||
//-
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue