\hypertarget{group__Ecore__Con__SSL__Group}{}\section{Ecore Connection S\+SL Functions}
\label{group__Ecore__Con__SSL__Group}\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}


Functions that operate on Ecore connection objects pertaining to S\+SL.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} int \mbox{\hyperlink{group__Ecore__Con__SSL__Group_gaa5d2328b414bd5ffb01466b853c45709}{ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get}} (void)
\begin{DoxyCompactList}\small\item\em Returns if S\+SL support is available. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga3e2cc9dc19a76ed7d0cd69c08b2482d5}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, const char $\ast$cert)
\begin{DoxyCompactList}\small\item\em Adds an S\+SL certificate for use in ecore\+\_\+con functions. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga336f50cd629b7bab5f45c2f13fe2d614}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, const char $\ast$key\+\_\+file)
\begin{DoxyCompactList}\small\item\em Adds an S\+SL private key for use in ecore\+\_\+con functions. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga27487f93b253246bea5e717287892cf9}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, const char $\ast$crl\+\_\+file)
\begin{DoxyCompactList}\small\item\em Adds an S\+SL C\+RL for use in ecore\+\_\+con functions. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga48d588d6dd1fb2710c64c57d20bd795c}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, const char $\ast$ca\+\_\+file)
\begin{DoxyCompactList}\small\item\em Adds an S\+SL CA file for use in ecore\+\_\+con functions. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga72320d4fd96ea97997850d1fc32a88b7}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Enables certificate verification on a server object. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga6ceab74f3cdf03a7485acddda01ebd17}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Enables hostname-\/based certificate verification on a server object. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Ecore__Con__SSL__Group_gab5289df02f73e8342ae66002b4bb779b}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, const char $\ast$name)
\begin{DoxyCompactList}\small\item\em Sets the hostname to verify against in certificate verification. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} const char $\ast$ \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga8b309716785644c47b0553db7a5d1c0a}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Gets the hostname to verify against in certificate verification. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_gadf006c82929e4bc6cb1cef4f6b7fcbb4}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade}} (\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$svr, Ecore\+\_\+\+Con\+\_\+\+Type compl\+\_\+type)
\begin{DoxyCompactList}\small\item\em Upgrades a connection to a specified level of encryption. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__SSL__Group_ga2528eafec09b733fd85d6f138f364d4f}{ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade}} (\mbox{\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\+\_\+\+Con\+\_\+\+Client}} $\ast$cl, Ecore\+\_\+\+Con\+\_\+\+Type compl\+\_\+type)
\begin{DoxyCompactList}\small\item\em Upgrades a connection to a specified level of encryption. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions that operate on Ecore connection objects pertaining to S\+SL. 



\subsection{Function Documentation}
\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_gaa5d2328b414bd5ffb01466b853c45709}\label{group__Ecore__Con__SSL__Group_gaa5d2328b414bd5ffb01466b853c45709}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get@{ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get@{ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get()}{ecore\_con\_ssl\_available\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} int ecore\+\_\+con\+\_\+ssl\+\_\+available\+\_\+get (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Returns if S\+SL support is available. 

\begin{DoxyReturn}{Returns}
{\ttfamily 1} if S\+SL is available and provided by gnutls, {\ttfamily 2} if S\+SL is available and provided by openssl, {\ttfamily 0} if it is not available. 
\end{DoxyReturn}


Referenced by ecore\+\_\+ipc\+\_\+ssl\+\_\+available\+\_\+get().

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga3e2cc9dc19a76ed7d0cd69c08b2482d5}\label{group__Ecore__Con__SSL__Group_ga3e2cc9dc19a76ed7d0cd69c08b2482d5}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add()}{ecore\_con\_ssl\_server\_cert\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cert\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{const char $\ast$}]{cert }\end{DoxyParamCaption})}



Adds an S\+SL certificate for use in ecore\+\_\+con functions. 

Use this function to add a S\+SL P\+EM certificate. Simply specify the cert here to use it in the server object for connecting or listening. If there is an error loading the certificate, an error will automatically be logged. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object \\
\hline
{\em cert} & The path to the certificate. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the file cannot be loaded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_server_example_8c-example}{ecore\+\_\+con\+\_\+server\+\_\+example.\+c}}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga336f50cd629b7bab5f45c2f13fe2d614}\label{group__Ecore__Con__SSL__Group_ga336f50cd629b7bab5f45c2f13fe2d614}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add()}{ecore\_con\_ssl\_server\_privkey\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+privkey\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{const char $\ast$}]{key\+\_\+file }\end{DoxyParamCaption})}



Adds an S\+SL private key for use in ecore\+\_\+con functions. 

Use this function to add a S\+SL P\+EM private key. Simply specify the key file here to use it in the server object for connecting or listening. If there is an error loading the key, an error will automatically be logged. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
{\em key\+\_\+file} & The path to the key file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the file cannot be loaded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_server_example_8c-example}{ecore\+\_\+con\+\_\+server\+\_\+example.\+c}}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga27487f93b253246bea5e717287892cf9}\label{group__Ecore__Con__SSL__Group_ga27487f93b253246bea5e717287892cf9}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add()}{ecore\_con\_ssl\_server\_crl\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+crl\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{const char $\ast$}]{crl\+\_\+file }\end{DoxyParamCaption})}



Adds an S\+SL C\+RL for use in ecore\+\_\+con functions. 

Use this function to add a S\+SL P\+EM C\+RL file. Simply specify the C\+RL file here to use it in the server object for connecting or listening. If there is an error loading the C\+RL, an error will automatically be logged. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
{\em crl\+\_\+file} & The path to the C\+RL file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the file cannot be loaded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga48d588d6dd1fb2710c64c57d20bd795c}\label{group__Ecore__Con__SSL__Group_ga48d588d6dd1fb2710c64c57d20bd795c}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add()}{ecore\_con\_ssl\_server\_cafile\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+cafile\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{const char $\ast$}]{ca\+\_\+file }\end{DoxyParamCaption})}



Adds an S\+SL CA file for use in ecore\+\_\+con functions. 

Use this function to add a S\+SL P\+EM CA file. Simply specify the file here to use it in the server object for connecting or listening. If there is an error loading the C\+As, an error will automatically be logged. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
{\em ca\+\_\+file} & The path to the CA file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the file cannot be loaded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
since 1.\+2, this function can load directories. 
\end{DoxyNote}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_client_example_8c-example}{ecore\+\_\+con\+\_\+client\+\_\+example.\+c}}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga72320d4fd96ea97997850d1fc32a88b7}\label{group__Ecore__Con__SSL__Group_ga72320d4fd96ea97997850d1fc32a88b7}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify()}{ecore\_con\_ssl\_server\_verify()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr }\end{DoxyParamCaption})}



Enables certificate verification on a server object. 

Call this function on a server object before main loop has started to enable verification of certificates against loaded certificates. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object \\
\hline
\end{DoxyParams}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_client_example_8c-example}{ecore\+\_\+con\+\_\+client\+\_\+example.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga6ceab74f3cdf03a7485acddda01ebd17}\label{group__Ecore__Con__SSL__Group_ga6ceab74f3cdf03a7485acddda01ebd17}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic()}{ecore\_con\_ssl\_server\_verify\_basic()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+basic (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr }\end{DoxyParamCaption})}



Enables hostname-\/based certificate verification on a server object. 

Call this function on a server object before main loop has started to enable verification of certificates using O\+N\+LY their hostnames. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
This function has no effect when used on a listening server created by ecore\+\_\+con\+\_\+server\+\_\+add. 
\end{DoxyNote}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_client_example_8c-example}{ecore\+\_\+con\+\_\+client\+\_\+example.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_gab5289df02f73e8342ae66002b4bb779b}\label{group__Ecore__Con__SSL__Group_gab5289df02f73e8342ae66002b4bb779b}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set()}{ecore\_con\_ssl\_server\_verify\_name\_set()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}



Sets the hostname to verify against in certificate verification. 

Sometimes the certificate hostname will not match the hostname that you are connecting to, and will instead match a different name. An example of this is that if you connect to talk.\+google.\+com to use Google Talk, you receive Google\textquotesingle{}s certificate for gmail.\+com. This certificate should be trusted, and so you must call this function with \char`\"{}gmail.\+com\char`\"{} as {\ttfamily name}. See R\+F\+C2818 for more details. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
{\em name} & The hostname to verify against \\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga8b309716785644c47b0553db7a5d1c0a}\label{group__Ecore__Con__SSL__Group_ga8b309716785644c47b0553db7a5d1c0a}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get()}{ecore\_con\_ssl\_server\_verify\_name\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} const char$\ast$ ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr }\end{DoxyParamCaption})}



Gets the hostname to verify against in certificate verification. 

This function returns the name which will be used to validate the S\+SL certificate common name (CN) or alt name (subject\+Alt\+Name). It will default to the {\ttfamily name} param in \mbox{\hyperlink{group__Ecore__Con__Server__Group_gae3d7391f7da5e0f748d7b6804d010b2f}{ecore\+\_\+con\+\_\+server\+\_\+connect()}}, but can be changed with \mbox{\hyperlink{group__Ecore__Con__SSL__Group_gab5289df02f73e8342ae66002b4bb779b}{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+verify\+\_\+name\+\_\+set()}}. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The hostname which will be used 
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_gadf006c82929e4bc6cb1cef4f6b7fcbb4}\label{group__Ecore__Con__SSL__Group_gadf006c82929e4bc6cb1cef4f6b7fcbb4}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade@{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade()}{ecore\_con\_ssl\_server\_upgrade()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+server\+\_\+upgrade (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\+\_\+\+Con\+\_\+\+Server}} $\ast$}]{svr,  }\item[{Ecore\+\_\+\+Con\+\_\+\+Type}]{compl\+\_\+type }\end{DoxyParamCaption})}



Upgrades a connection to a specified level of encryption. 

Use this function to begin an S\+SL handshake on a connection (S\+T\+A\+R\+T\+T\+LS or similar). Once the upgrade has been completed, an E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+S\+E\+R\+V\+E\+R\+\_\+\+U\+P\+G\+R\+A\+DE event will be emitted. The connection should be treated as disconnected until the next event. 
\begin{DoxyParams}{Parameters}
{\em svr} & The server object. \\
\hline
{\em ssl\+\_\+type} & The S\+SL connection type (O\+N\+LY). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the connection cannot be upgraded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
This function is N\+E\+V\+ER to be used on a server object created with ecore\+\_\+con\+\_\+server\+\_\+add. 
\end{DoxyNote}
\begin{DoxyWarning}{Warning}
Setting a wrong value for {\ttfamily compl\+\_\+type} W\+I\+LL mess up your program. 
\end{DoxyWarning}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_client_example_8c-example}{ecore\+\_\+con\+\_\+client\+\_\+example.\+c}}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Ecore__Con__SSL__Group_ga2528eafec09b733fd85d6f138f364d4f}\label{group__Ecore__Con__SSL__Group_ga2528eafec09b733fd85d6f138f364d4f}} 
\index{Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}!ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade@{ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade}}
\index{ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade@{ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade}!Ecore Connection S\+S\+L Functions@{Ecore Connection S\+S\+L Functions}}
\subsubsection{\texorpdfstring{ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade()}{ecore\_con\_ssl\_client\_upgrade()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+ssl\+\_\+client\+\_\+upgrade (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\+\_\+\+Con\+\_\+\+Client}} $\ast$}]{cl,  }\item[{Ecore\+\_\+\+Con\+\_\+\+Type}]{compl\+\_\+type }\end{DoxyParamCaption})}



Upgrades a connection to a specified level of encryption. 

Use this function to begin an S\+SL handshake on a connection (S\+T\+A\+R\+T\+T\+LS or similar). Once the upgrade has been completed, an E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+C\+L\+I\+E\+N\+T\+\_\+\+U\+P\+G\+R\+A\+DE event will be emitted. The connection should be treated as disconnected until the next event. 
\begin{DoxyParams}{Parameters}
{\em cl} & The client object. \\
\hline
{\em ssl\+\_\+type} & The S\+SL connection type (O\+N\+LY). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} if the connection cannot be upgraded, otherwise {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE}. 
\end{DoxyReturn}
\begin{DoxyWarning}{Warning}
Setting a wrong value for {\ttfamily compl\+\_\+type} W\+I\+LL mess up your program. 
\end{DoxyWarning}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{ecore_con_server_example_8c-example}{ecore\+\_\+con\+\_\+server\+\_\+example.\+c}}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

