\hypertarget{group__Ecore__Con__Client__Group}{\section{Ecore Connection Client Functions}
\label{group__Ecore__Con__Client__Group}\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}}
}


Functions to communicate with and/or set options on a client.  


\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{typedef struct \-\_\-\-Ecore\-\_\-\-Con\-\_\-\-Client \hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client}}\label{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}

\begin{DoxyCompactList}\small\item\em A connection handle to a client. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Ecore__Con__Client__Group_ga166fd469acaa809faa4247b12d79278f}{ecore\-\_\-con\-\_\-client\-\_\-send} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl, const void $\ast$data, int size)
\begin{DoxyCompactList}\small\item\em Sends the given data to the given client. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\-\_\-\-Con\-\_\-\-Server} $\ast$ \hyperlink{group__Ecore__Con__Client__Group_gaef803de546a076ac6d8c7d74bdfefef7}{ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Retrieves the server representing the socket the client has connected to. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Ecore__Con__Client__Group_gadf3587a45b98c77d0c60f131bbc42a18}{ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Returns whether the client is still connected. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Ecore__Con__Client__Group_gac96c76af4f6c9d842e52ea38312c73dd}{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl, double timeout)
\begin{DoxyCompactList}\small\item\em Set the time after which the client will be disconnected when inactive. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} double \hyperlink{group__Ecore__Con__Client__Group_gad80bf8bb5453ce636e88af6b79658bb1}{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Get the default time after which the client will be disconnected when inactive. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void $\ast$ \hyperlink{group__Ecore__Con__Client__Group_gaddd302cb689b5040363246a58f20a680}{ecore\-\_\-con\-\_\-client\-\_\-del} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Closes the connection and frees memory allocated to the given client. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Ecore__Con__Client__Group_ga0c81c3b201d7fa6d48b6f5e99a651edc}{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Sets the data associated with the given client to {\ttfamily data}. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void $\ast$ \hyperlink{group__Ecore__Con__Client__Group_ga34e96711b04adecc9ade2b1f3408c390}{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Retrieves the data associated with the given client. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} const char $\ast$ \hyperlink{group__Ecore__Con__Client__Group_ga653340eaaae3aef0aad87866a9a0f865}{ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Gets the I\-P address of a client that has connected. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Ecore__Con__Client__Group_ga11951dd47f6483f76f800b5c258ebe41}{ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Return the port that the client has connected to. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} double \hyperlink{group__Ecore__Con__Client__Group_ga15b1829e32f7f4847e99a032e2a8e71f}{ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Check how long a client has been connected. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Ecore__Con__Client__Group_gaccf37688bb1ecbedc8791b5b43c1595c}{ecore\-\_\-con\-\_\-client\-\_\-flush} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Flushes all pending data to the given client. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Ecore__Con__Client__Group_ga4c105e2dccaed9584b974e0ef6644035}{ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get} (\hyperlink{group__Ecore__Con__Server__Group_ga80f90f9716013d6104624c2e606f8915}{Ecore\-\_\-\-Con\-\_\-\-Server} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Get the fd that the server is connected to. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Ecore__Con__Client__Group_ga0da7ed5955fa9f119ad20480865997d1}{ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get} (\hyperlink{group__Ecore__Con__Client__Group_gae9afe250f5420f4731d1a94050275756}{Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$cl)
\begin{DoxyCompactList}\small\item\em Get the fd that the client is connected to. \end{DoxyCompactList}\item 
int \hyperlink{group__Ecore__Con__Client__Group_ga246f73d6f24a651bd6fd5790a4e90064}{ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get} (void)
\begin{DoxyCompactList}\small\item\em Returns if S\-S\-L support is available. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Ecore__Con__Client__Group_gaad8e029c00a1a4a6097f5ff17dec3c2e}{ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get} (void)
\begin{DoxyCompactList}\small\item\em Returns if S\-S\-L support is available. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions to communicate with and/or set options on a client. Functions that operate on Ecore connection client objects.

This set of functions, as explained in \hyperlink{group__Ecore__Con__Server__Group}{Ecore Connection Server Functions}, is used to send data to a client, or to set options and get information about this client. Most of them should be used on the server, applied on the client object.

If you need to implement a client, the way to connect to a server is described in \hyperlink{group__Ecore__Con__Server__Group}{Ecore Connection Server Functions}.

An example of usage of these functions can be found at\-: \begin{DoxyItemize}
\item \hyperlink{ecore_con_client_simple_example_c}{Ecore\-\_\-\-Con -\/ Creating a client} \end{DoxyItemize}


\subsection{Function Documentation}
\hypertarget{group__Ecore__Con__Client__Group_ga166fd469acaa809faa4247b12d79278f}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-send@{ecore\-\_\-con\-\_\-client\-\_\-send}}
\index{ecore\-\_\-con\-\_\-client\-\_\-send@{ecore\-\_\-con\-\_\-client\-\_\-send}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-send}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ecore\-\_\-con\-\_\-client\-\_\-send (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl, }
\item[{const void $\ast$}]{data, }
\item[{int}]{size}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga166fd469acaa809faa4247b12d79278f}


Sends the given data to the given client. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
{\em data} & The given data. \\
\hline
{\em size} & Length of the data, in bytes, to send. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes sent. {\ttfamily 0} will be returned if there is an error.
\end{DoxyReturn}
This function will send the given data to the client as soon as the program is back to the main loop. Thus, this function returns immediately (non-\/blocking). If the data needs to be sent {\bfseries now}, call \hyperlink{group__Ecore__Con__Client__Group_gaccf37688bb1ecbedc8791b5b43c1595c}{ecore\-\_\-con\-\_\-client\-\_\-flush()} after this one.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Ecore__Con__Server__Group_gadf16abc2d4fc16a8b65709eab2cd8337}{ecore\-\_\-con\-\_\-server\-\_\-send()} 

\hyperlink{group__Ecore__Con__Client__Group_gaccf37688bb1ecbedc8791b5b43c1595c}{ecore\-\_\-con\-\_\-client\-\_\-flush()} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-example.\-c}, and \hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


References E\-C\-O\-R\-E\-\_\-\-C\-O\-N\-\_\-\-R\-E\-M\-O\-T\-E\-\_\-\-C\-O\-R\-K, E\-C\-O\-R\-E\-\_\-\-C\-O\-N\-\_\-\-R\-E\-M\-O\-T\-E\-\_\-\-U\-D\-P, E\-C\-O\-R\-E\-\_\-\-F\-D\-\_\-\-R\-E\-A\-D, E\-C\-O\-R\-E\-\_\-\-F\-D\-\_\-\-W\-R\-I\-T\-E, ecore\-\_\-main\-\_\-fd\-\_\-handler\-\_\-active\-\_\-set(), eina\-\_\-binbuf\-\_\-append\-\_\-length(), and eina\-\_\-binbuf\-\_\-new().



Referenced by ecore\-\_\-ipc\-\_\-client\-\_\-send().

\hypertarget{group__Ecore__Con__Client__Group_gaef803de546a076ac6d8c7d74bdfefef7}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Ecore\-\_\-\-Con\-\_\-\-Server} $\ast$ ecore\-\_\-con\-\_\-client\-\_\-server\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gaef803de546a076ac6d8c7d74bdfefef7}


Retrieves the server representing the socket the client has connected to. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The server that the client connected to. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}
\hypertarget{group__Ecore__Con__Client__Group_gadf3587a45b98c77d0c60f131bbc42a18}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} ecore\-\_\-con\-\_\-client\-\_\-connected\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gadf3587a45b98c77d0c60f131bbc42a18}


Returns whether the client is still connected. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if connected, {\ttfamily E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E.



Referenced by ecore\-\_\-ipc\-\_\-client\-\_\-send().

\hypertarget{group__Ecore__Con__Client__Group_gac96c76af4f6c9d842e52ea38312c73dd}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set@{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set}}
\index{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set@{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl, }
\item[{double}]{timeout}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gac96c76af4f6c9d842e52ea38312c73dd}


Set the time after which the client will be disconnected when inactive. 


\begin{DoxyParams}{Parameters}
{\em cl} & The client object \\
\hline
{\em timeout} & The timeout, in seconds, to disconnect after\\
\hline
\end{DoxyParams}
This function is used by the server to set the idle timeout on a specific client. If the client becomes idle for a time higher than this value, it will be disconnected. A value of $<$ 1 disables the idle timeout.

This timeout is not affected by the one set by \hyperlink{group__Ecore__Con__Server__Group_ga468eec82ada0234b6ea2b5b8d6e25407}{ecore\-\_\-con\-\_\-server\-\_\-timeout\-\_\-set()}. A client will be disconnected whenever the client or the server timeout is reached. That means, the lower timeout value will be used for that client if \hyperlink{group__Ecore__Con__Server__Group_ga468eec82ada0234b6ea2b5b8d6e25407}{ecore\-\_\-con\-\_\-server\-\_\-timeout\-\_\-set()} is used on the server.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Ecore__Con__Client__Group_gad80bf8bb5453ce636e88af6b79658bb1}{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get()} 

\hyperlink{group__Ecore__Con__Server__Group_ga468eec82ada0234b6ea2b5b8d6e25407}{ecore\-\_\-con\-\_\-server\-\_\-timeout\-\_\-set()} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-example.\-c}, and \hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}
\hypertarget{group__Ecore__Con__Client__Group_gad80bf8bb5453ce636e88af6b79658bb1}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} double ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gad80bf8bb5453ce636e88af6b79658bb1}


Get the default time after which the client will be disconnected when inactive. 


\begin{DoxyParams}{Parameters}
{\em cl} & The client object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The timeout, in seconds, to disconnect after
\end{DoxyReturn}
This function is used to get the idle timeout for a client. A value of $<$ 1 means the idle timeout is disabled.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Ecore__Con__Client__Group_gac96c76af4f6c9d842e52ea38312c73dd}{ecore\-\_\-con\-\_\-client\-\_\-timeout\-\_\-set()} 
\end{DoxySeeAlso}
\hypertarget{group__Ecore__Con__Client__Group_gaddd302cb689b5040363246a58f20a680}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-del@{ecore\-\_\-con\-\_\-client\-\_\-del}}
\index{ecore\-\_\-con\-\_\-client\-\_\-del@{ecore\-\_\-con\-\_\-client\-\_\-del}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-del}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void $\ast$ ecore\-\_\-con\-\_\-client\-\_\-del (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gaddd302cb689b5040363246a58f20a680}


Closes the connection and frees memory allocated to the given client. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Data associated with the client. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


Referenced by ecore\-\_\-ipc\-\_\-client\-\_\-del().

\hypertarget{group__Ecore__Con__Client__Group_ga0c81c3b201d7fa6d48b6f5e99a651edc}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set@{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set}}
\index{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set@{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-set (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl, }
\item[{const void $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga0c81c3b201d7fa6d48b6f5e99a651edc}


Sets the data associated with the given client to {\ttfamily data}. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
{\em data} & What to set the data to. \\
\hline
\end{DoxyParams}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}
\hypertarget{group__Ecore__Con__Client__Group_ga34e96711b04adecc9ade2b1f3408c390}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void $\ast$ ecore\-\_\-con\-\_\-client\-\_\-data\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga34e96711b04adecc9ade2b1f3408c390}


Retrieves the data associated with the given client. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The data associated with {\ttfamily cl}. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}
\hypertarget{group__Ecore__Con__Client__Group_ga653340eaaae3aef0aad87866a9a0f865}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} const char $\ast$ ecore\-\_\-con\-\_\-client\-\_\-ip\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga653340eaaae3aef0aad87866a9a0f865}


Gets the I\-P address of a client that has connected. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A pointer to an internal string that contains the I\-P address of the connected client in the form \char`\"{}\-X\-X\-X.\-Y\-Y\-Y.\-Z\-Z\-Z.\-A\-A\-A\char`\"{} I\-P notation.
\end{DoxyReturn}
The returned string should not be modified, freed or trusted to stay valid after deletion for the {\ttfamily cl} object. If no I\-P is known {\ttfamily N\-U\-L\-L} is returned. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-example.\-c}, and \hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


Referenced by ecore\-\_\-ipc\-\_\-client\-\_\-ip\-\_\-get().

\hypertarget{group__Ecore__Con__Client__Group_ga11951dd47f6483f76f800b5c258ebe41}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ecore\-\_\-con\-\_\-client\-\_\-port\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga11951dd47f6483f76f800b5c258ebe41}


Return the port that the client has connected to. 


\begin{DoxyParams}{Parameters}
{\em cl} & The client \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The port that {\ttfamily cl} has connected to, or -\/1 on error Use this function to return the port on which a given client has connected. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}
\hypertarget{group__Ecore__Con__Client__Group_ga15b1829e32f7f4847e99a032e2a8e71f}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} double ecore\-\_\-con\-\_\-client\-\_\-uptime\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga15b1829e32f7f4847e99a032e2a8e71f}


Check how long a client has been connected. 


\begin{DoxyParams}{Parameters}
{\em cl} & The client to check \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The total time, in seconds, that the client has been connected to the server
\end{DoxyReturn}
This function is used to find out how long a client has been connected for. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


References ecore\-\_\-time\-\_\-get().

\hypertarget{group__Ecore__Con__Client__Group_gaccf37688bb1ecbedc8791b5b43c1595c}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-flush@{ecore\-\_\-con\-\_\-client\-\_\-flush}}
\index{ecore\-\_\-con\-\_\-client\-\_\-flush@{ecore\-\_\-con\-\_\-client\-\_\-flush}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-flush}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void ecore\-\_\-con\-\_\-client\-\_\-flush (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gaccf37688bb1ecbedc8791b5b43c1595c}


Flushes all pending data to the given client. 


\begin{DoxyParams}{Parameters}
{\em cl} & The given client.\\
\hline
\end{DoxyParams}
This function will block until all data is sent to the server.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Ecore__Con__Client__Group_ga166fd469acaa809faa4247b12d79278f}{ecore\-\_\-con\-\_\-client\-\_\-send()} 

\hyperlink{group__Ecore__Con__Server__Group_ga3ddb6c88484b59a1f5a5bacb8b6e60fe}{ecore\-\_\-con\-\_\-server\-\_\-flush()} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ecore_con_server_simple_example_8c-example}{ecore\-\_\-con\-\_\-server\-\_\-simple\-\_\-example.\-c}.\end{Desc}


Referenced by ecore\-\_\-ipc\-\_\-client\-\_\-flush().

\hypertarget{group__Ecore__Con__Client__Group_ga4c105e2dccaed9584b974e0ef6644035}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get@{ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get}}
\index{ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get@{ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ecore\-\_\-con\-\_\-server\-\_\-fd\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Server} $\ast$}]{svr}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga4c105e2dccaed9584b974e0ef6644035}


Get the fd that the server is connected to. 


\begin{DoxyParams}{Parameters}
{\em svr} & The server object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The fd, or -\/1 on failure
\end{DoxyReturn}
This function returns the fd which is used by the underlying server connection. It should not be tampered with unless you R\-E\-A\-L\-L\-Y know what you are doing. \begin{DoxyNote}{Note}
This function is only valid for servers created with \hyperlink{group__Ecore__Con__Server__Group_gae3d7391f7da5e0f748d7b6804d010b2f}{ecore\-\_\-con\-\_\-server\-\_\-connect()} 
\end{DoxyNote}
\begin{DoxyWarning}{Warning}
Seriously. Don't use this unless you know what you are doing. 
\end{DoxyWarning}
\begin{DoxySince}{Since}
1.\-1 
\end{DoxySince}


References ecore\-\_\-main\-\_\-fd\-\_\-handler\-\_\-fd\-\_\-get().

\hypertarget{group__Ecore__Con__Client__Group_ga0da7ed5955fa9f119ad20480865997d1}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get}}
\index{ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get@{ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ecore\-\_\-con\-\_\-client\-\_\-fd\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\-\_\-\-Con\-\_\-\-Client} $\ast$}]{cl}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga0da7ed5955fa9f119ad20480865997d1}


Get the fd that the client is connected to. 


\begin{DoxyParams}{Parameters}
{\em cl} & The client object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The fd, or -\/1 on failure
\end{DoxyReturn}
This function returns the fd which is used by the underlying client connection. It should not be tampered with unless you R\-E\-A\-L\-L\-Y know what you are doing. \begin{DoxySince}{Since}
1.\-1 
\end{DoxySince}


References ecore\-\_\-main\-\_\-fd\-\_\-handler\-\_\-fd\-\_\-get().

\hypertarget{group__Ecore__Con__Client__Group_ga246f73d6f24a651bd6fd5790a4e90064}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get@{ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get}}
\index{ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get@{ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}int ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_ga246f73d6f24a651bd6fd5790a4e90064}


Returns if S\-S\-L support is available. 

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


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

\hypertarget{group__Ecore__Con__Client__Group_gaad8e029c00a1a4a6097f5ff17dec3c2e}{\index{Ecore Connection Client Functions@{Ecore Connection Client Functions}!ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get@{ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get}}
\index{ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get@{ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get}!Ecore Connection Client Functions@{Ecore Connection Client Functions}}
\subsubsection[{ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ecore\-\_\-ipc\-\_\-ssl\-\_\-available\-\_\-get (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{group__Ecore__Con__Client__Group_gaad8e029c00a1a4a6097f5ff17dec3c2e}


Returns if S\-S\-L support is available. 

\begin{DoxyReturn}{Returns}
1 if S\-S\-L is available, 0 if it is not. 
\end{DoxyReturn}


References ecore\-\_\-con\-\_\-ssl\-\_\-available\-\_\-get().

