\hypertarget{group__ssl__mode__constants}{}\doxysection{SSL Verification Mode Constants} \label{group__ssl__mode__constants}\index{SSL Verification Mode Constants@{SSL Verification Mode Constants}} \doxysubsection*{Variables} \begin{DoxyCompactItemize} \item const \mbox{\hyperlink{group__ssl__mode__constants_ga70bdb100f9ffb3564dfc38505740a0cb}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE}} = SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE \begin{DoxyCompactList}\small\item\em Only request a client certificate once in server mode. \end{DoxyCompactList}\item const \mbox{\hyperlink{group__ssl__mode__constants_ga7053aa1b8d954e00530f632c502c91d2}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT}} = SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT \begin{DoxyCompactList}\small\item\em Require a client certificate in server mode. \end{DoxyCompactList}\item const \mbox{\hyperlink{group__ssl__mode__constants_ga3e03ac75e51a9f4e994518fc3fc69ab7}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+NONE}} = SSL\+\_\+\+VERIFY\+\_\+\+NONE \begin{DoxyCompactList}\small\item\em Do not verify the peer\textquotesingle{}s certificate. \end{DoxyCompactList}\item const \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} = SSL\+\_\+\+VERIFY\+\_\+\+PEER \begin{DoxyCompactList}\small\item\em Verify the peer\textquotesingle{}s certificate. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection{Detailed Description} These are integer contants to be used with \mbox{\hyperlink{class_qore_1_1_socket_aaafb6b597a1e5b3372d88ea53ea4cbac}{Socket\+::set\+Ssl\+Verify\+Mode()}} and are returned by \mbox{\hyperlink{class_qore_1_1_socket_a749e2b7f8882b0e6fcc058886134daf5}{Socket\+::get\+Ssl\+Verify\+Mode()}} \doxysubsection{Variable Documentation} \mbox{\Hypertarget{group__ssl__mode__constants_ga70bdb100f9ffb3564dfc38505740a0cb}\label{group__ssl__mode__constants_ga70bdb100f9ffb3564dfc38505740a0cb}} \index{SSL Verification Mode Constants@{SSL Verification Mode Constants}!SSL\_VERIFY\_CLIENT\_ONCE@{SSL\_VERIFY\_CLIENT\_ONCE}} \index{SSL\_VERIFY\_CLIENT\_ONCE@{SSL\_VERIFY\_CLIENT\_ONCE}!SSL Verification Mode Constants@{SSL Verification Mode Constants}} \doxysubsubsection{\texorpdfstring{SSL\_VERIFY\_CLIENT\_ONCE}{SSL\_VERIFY\_CLIENT\_ONCE}} {\footnotesize\ttfamily const Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE = SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE} Only request a client certificate once in server mode. \begin{DoxyParagraph}{Server Mode} Only request a client certificate on the initial TLS/\+SSL handshake. Do not ask for a client certificate again in case of a renegotiation. This flag must be used together with \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} (combined with binary or). \end{DoxyParagraph} \begin{DoxyParagraph}{Client Mode} Ignored \end{DoxyParagraph} \begin{DoxyNote}{Note} must be used with \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} (combined with binary or) \end{DoxyNote} \mbox{\Hypertarget{group__ssl__mode__constants_ga7053aa1b8d954e00530f632c502c91d2}\label{group__ssl__mode__constants_ga7053aa1b8d954e00530f632c502c91d2}} \index{SSL Verification Mode Constants@{SSL Verification Mode Constants}!SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT@{SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT}} \index{SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT@{SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT}!SSL Verification Mode Constants@{SSL Verification Mode Constants}} \doxysubsubsection{\texorpdfstring{SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT}{SSL\_VERIFY\_FAIL\_IF\_NO\_PEER\_CERT}} {\footnotesize\ttfamily const Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT = SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT} Require a client certificate in server mode. \begin{DoxyParagraph}{Server Mode} If the client did not return a certificate, the TLS/\+SSL handshake is immediately terminated with a \char`\"{}handshake failure\char`\"{} alert. This flag must be used together with \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} (combined with binary or). \end{DoxyParagraph} \begin{DoxyParagraph}{Client Mode} Ignored \end{DoxyParagraph} \begin{DoxyNote}{Note} must be used with \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} (combined with binary or) \end{DoxyNote} \mbox{\Hypertarget{group__ssl__mode__constants_ga3e03ac75e51a9f4e994518fc3fc69ab7}\label{group__ssl__mode__constants_ga3e03ac75e51a9f4e994518fc3fc69ab7}} \index{SSL Verification Mode Constants@{SSL Verification Mode Constants}!SSL\_VERIFY\_NONE@{SSL\_VERIFY\_NONE}} \index{SSL\_VERIFY\_NONE@{SSL\_VERIFY\_NONE}!SSL Verification Mode Constants@{SSL Verification Mode Constants}} \doxysubsubsection{\texorpdfstring{SSL\_VERIFY\_NONE}{SSL\_VERIFY\_NONE}} {\footnotesize\ttfamily const Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+NONE = SSL\+\_\+\+VERIFY\+\_\+\+NONE} Do not verify the peer\textquotesingle{}s certificate. \begin{DoxyParagraph}{Server Mode} The server will not send a client certificate request to the client, so the client will not send a certificate \end{DoxyParagraph} \begin{DoxyParagraph}{Client Mode} If not using an anonymous cipher (by default disabled), the server will send a certificate which will be checked. The handshake will be continued regardless of the verification result. \end{DoxyParagraph} \mbox{\Hypertarget{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}\label{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}} \index{SSL Verification Mode Constants@{SSL Verification Mode Constants}!SSL\_VERIFY\_PEER@{SSL\_VERIFY\_PEER}} \index{SSL\_VERIFY\_PEER@{SSL\_VERIFY\_PEER}!SSL Verification Mode Constants@{SSL Verification Mode Constants}} \doxysubsubsection{\texorpdfstring{SSL\_VERIFY\_PEER}{SSL\_VERIFY\_PEER}} {\footnotesize\ttfamily const Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER = SSL\+\_\+\+VERIFY\+\_\+\+PEER} Verify the peer\textquotesingle{}s certificate. \begin{DoxyParagraph}{Server Mode} The server sends a client certificate request to the client. The certificate returned (if any) is checked. If the verification process fails, the TLS/\+SSL handshake is immediately terminated with an alert message containing the reason for the verification failure. The behaviour can be controlled by the additional \mbox{\hyperlink{group__ssl__mode__constants_ga7053aa1b8d954e00530f632c502c91d2}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT}} and \mbox{\hyperlink{group__ssl__mode__constants_ga70bdb100f9ffb3564dfc38505740a0cb}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE}} flags. \end{DoxyParagraph} \begin{DoxyParagraph}{Client Mode} The server certificate is verified. If the verification process fails, the TLS/\+SSL handshake is immediately terminated with an alert message containing the reason for the verification failure. If no server certificate is sent, because an anonymous cipher is used, \mbox{\hyperlink{group__ssl__mode__constants_gae29e3d0203f536c5bf5c0cb225c73c1a}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+PEER}} is ignored. \end{DoxyParagraph} \begin{DoxySeeAlso}{See also} \begin{DoxyItemize} \item \mbox{\hyperlink{group__ssl__mode__constants_ga7053aa1b8d954e00530f632c502c91d2}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+FAIL\+\_\+\+IF\+\_\+\+NO\+\_\+\+PEER\+\_\+\+CERT}} \item \mbox{\hyperlink{group__ssl__mode__constants_ga70bdb100f9ffb3564dfc38505740a0cb}{Qore\+::\+SSL\+\_\+\+VERIFY\+\_\+\+CLIENT\+\_\+\+ONCE}} \end{DoxyItemize} \end{DoxySeeAlso}