sslca.xml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <refentry id="refsslca">
  2. <refmeta>
  3. <refentrytitle>ne_ssl_load_ca</refentrytitle>
  4. <manvolnum>3</manvolnum>
  5. </refmeta>
  6. <refnamediv>
  7. <refname id="ne_ssl_load_ca">ne_ssl_load_ca</refname>
  8. <refname id="ne_ssl_load_default_ca">ne_ssl_load_default_ca</refname>
  9. <refpurpose>load SSL Certificate Authorities</refpurpose>
  10. </refnamediv>
  11. <refsynopsisdiv>
  12. <funcsynopsis>
  13. <funcsynopsisinfo>#include &lt;ne_session.h&gt;</funcsynopsisinfo>
  14. <funcprototype>
  15. <funcdef>int <function>ne_ssl_load_ca</function></funcdef>
  16. <paramdef>ne_session *<parameter>session</parameter></paramdef>
  17. <paramdef>const char *<parameter>filename</parameter></paramdef>
  18. </funcprototype>
  19. <funcprototype>
  20. <funcdef>int <function>ne_ssl_load_default_ca</function></funcdef>
  21. <paramdef>ne_session *<parameter>session</parameter></paramdef>
  22. </funcprototype>
  23. </funcsynopsis>
  24. </refsynopsisdiv>
  25. <refsect1>
  26. <title>Description</title>
  27. <para>To indicate that a given CA certificate is trusted by the user,
  28. the certificate can be loaded using the <function>ne_ssl_load_ca</function>
  29. function. The <parameter>filename</parameter> parameter given must specify
  30. the location of a PEM-encoded CA certificate.</para>
  31. <para>The SSL library in use by neon may include a default set
  32. of CA certificates; calling the
  33. <function>ne_ssl_load_default_ca</function> function will indicate
  34. that these CAs are trusted by the user.</para>
  35. <para>If no CA certificates are loaded, or the server presents
  36. a certificate which is invalid in some way, then the certificate must
  37. be manually verified (see <xref linkend="ne_ssl_set_verify"/>), otherwise the
  38. connection will fail.</para>
  39. </refsect1>
  40. <refsect1>
  41. <title>Return value</title>
  42. <para>Both <function>ne_ssl_load_ca</function> and
  43. <function>ne_ssl_load_default_ca</function> functions return
  44. <literal>0</literal> on success, or non-zero on failure.</para>
  45. </refsect1>
  46. <refsect1>
  47. <title>Examples</title>
  48. <para>Load the CA certificate stored in <filename>/path/to/cacert.pem</filename>:</para>
  49. <programlisting>&egsess;
  50. if (ne_ssl_load_ca(sess, "/path/to/cacert.pem")) {
  51. printf("Could not load CA cert: %s\n", ne_get_error(sess));
  52. }</programlisting>
  53. </refsect1>
  54. <refsect1>
  55. <title>See also</title>
  56. <para><xref linkend="ne_get_error"/>, <xref
  57. linkend="ne_ssl_set_verify"/></para> </refsect1>
  58. </refentry>