\hypertarget{group__Ecore__Con__Lib__Group}{}\doxysection{Ecore Connection Library Functions}
\label{group__Ecore__Con__Lib__Group}\index{Ecore Connection Library Functions@{Ecore Connection Library Functions}}


Utility functions that set up and shut down the Ecore Connection library.  


\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__Con__Lib__Group_ga9fcf024da9857192f9405c12cb6a90d9}\label{group__Ecore__Con__Lib__Group_ga9fcf024da9857192f9405c12cb6a90d9}} 
typedef void($\ast$ \mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga9fcf024da9857192f9405c12cb6a90d9}{Ecore\+\_\+\+Con\+\_\+\+Dns\+\_\+\+Cb}}) (const char $\ast$canonname, const char $\ast$ip, struct sockaddr $\ast$addr, int addrlen, void $\ast$data)
\begin{DoxyCompactList}\small\item\em A callback type for use with \mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga6b5e2dec763b58570cf5ec1e93dac632}{ecore\+\_\+con\+\_\+lookup}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} int \mbox{\hyperlink{group__Ecore__Con__Lib__Group_gacf5ecf42c516bb9c8b6759721e9559bd}{ecore\+\_\+con\+\_\+init}} (void)
\begin{DoxyCompactList}\small\item\em Initializes the Ecore\+\_\+\+Con library. \end{DoxyCompactList}\item 
\mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} int \mbox{\hyperlink{group__Ecore__Con__Lib__Group_gaccfd8dd2a1187b71339b5cc39dc83938}{ecore\+\_\+con\+\_\+shutdown}} (void)
\begin{DoxyCompactList}\small\item\em Shuts down the Ecore\+\_\+\+Con library. \end{DoxyCompactList}\item 
\mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga6b5e2dec763b58570cf5ec1e93dac632}{ecore\+\_\+con\+\_\+lookup}} (const char $\ast$name, \mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga9fcf024da9857192f9405c12cb6a90d9}{Ecore\+\_\+\+Con\+\_\+\+Dns\+\_\+\+Cb}} done\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Do an asynchronous DNS lookup. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Utility functions that set up and shut down the Ecore Connection library. 

There\textquotesingle{}s also \mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga6b5e2dec763b58570cf5ec1e93dac632}{ecore\+\_\+con\+\_\+lookup()}} that can be used to make simple asynchronous DNS lookups.

A simple example of how to use these functions\+: \begin{DoxyItemize}
\item \mbox{\hyperlink{ecore_con_lookup_example_c}{Ecore\+\_\+\+Con -\/ DNS lookup}} \end{DoxyItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Ecore__Con__Lib__Group_gacf5ecf42c516bb9c8b6759721e9559bd}\label{group__Ecore__Con__Lib__Group_gacf5ecf42c516bb9c8b6759721e9559bd}} 
\index{Ecore Connection Library Functions@{Ecore Connection Library Functions}!ecore\_con\_init@{ecore\_con\_init}}
\index{ecore\_con\_init@{ecore\_con\_init}!Ecore Connection Library Functions@{Ecore Connection Library Functions}}
\doxysubsubsection{\texorpdfstring{ecore\_con\_init()}{ecore\_con\_init()}}
{\footnotesize\ttfamily \mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} int ecore\+\_\+con\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Initializes the Ecore\+\_\+\+Con library. 

\begin{DoxyReturn}{Returns}
Number of times the library has been initialised without being shut down.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
This function already calls \mbox{\hyperlink{group__Ecore__Init__Group_ga77757609684a2c922dc5ec398274751b}{ecore\+\_\+init()}} internally, so you don\textquotesingle{}t need to call it explicitly. 
\end{DoxyNote}


References ecore\+\_\+init(), ecore\+\_\+shutdown(), eina\+\_\+init(), eina\+\_\+log\+\_\+domain\+\_\+register(), EINA\+\_\+\+LOG\+\_\+\+ERR, EINA\+\_\+\+LOG\+\_\+\+STATE\+\_\+\+INIT, EINA\+\_\+\+LOG\+\_\+\+STATE\+\_\+\+STOP, eina\+\_\+log\+\_\+timing(), eina\+\_\+shutdown(), evil\+\_\+init(), and evil\+\_\+shutdown().



Referenced by ecore\+\_\+con\+\_\+url\+\_\+init(), ecore\+\_\+ipc\+\_\+init(), and elm\+\_\+quicklaunch\+\_\+sub\+\_\+init().

\mbox{\Hypertarget{group__Ecore__Con__Lib__Group_gaccfd8dd2a1187b71339b5cc39dc83938}\label{group__Ecore__Con__Lib__Group_gaccfd8dd2a1187b71339b5cc39dc83938}} 
\index{Ecore Connection Library Functions@{Ecore Connection Library Functions}!ecore\_con\_shutdown@{ecore\_con\_shutdown}}
\index{ecore\_con\_shutdown@{ecore\_con\_shutdown}!Ecore Connection Library Functions@{Ecore Connection Library Functions}}
\doxysubsubsection{\texorpdfstring{ecore\_con\_shutdown()}{ecore\_con\_shutdown()}}
{\footnotesize\ttfamily \mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} int ecore\+\_\+con\+\_\+shutdown (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Shuts down the Ecore\+\_\+\+Con library. 

\begin{DoxyReturn}{Returns}
Number of times the library has been initialised without being shut down. 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
This function already calls \mbox{\hyperlink{group__Ecore__Init__Group_ga768298b932f18d7e7593a447493e5cde}{ecore\+\_\+shutdown()}} internally, so you don\textquotesingle{}t need to call it explicitly unless you called \mbox{\hyperlink{group__Ecore__Init__Group_ga77757609684a2c922dc5ec398274751b}{ecore\+\_\+init()}} explicitly too. 
\end{DoxyNote}


References ecore\+\_\+shutdown(), eina\+\_\+log\+\_\+domain\+\_\+unregister(), EINA\+\_\+\+LOG\+\_\+\+STATE\+\_\+\+SHUTDOWN, EINA\+\_\+\+LOG\+\_\+\+STATE\+\_\+\+START, eina\+\_\+log\+\_\+timing(), eina\+\_\+shutdown(), ERR, and evil\+\_\+shutdown().



Referenced by ecore\+\_\+con\+\_\+url\+\_\+init(), ecore\+\_\+con\+\_\+url\+\_\+shutdown(), elm\+\_\+quicklaunch\+\_\+sub\+\_\+init(), and elm\+\_\+quicklaunch\+\_\+sub\+\_\+shutdown().

\mbox{\Hypertarget{group__Ecore__Con__Lib__Group_ga6b5e2dec763b58570cf5ec1e93dac632}\label{group__Ecore__Con__Lib__Group_ga6b5e2dec763b58570cf5ec1e93dac632}} 
\index{Ecore Connection Library Functions@{Ecore Connection Library Functions}!ecore\_con\_lookup@{ecore\_con\_lookup}}
\index{ecore\_con\_lookup@{ecore\_con\_lookup}!Ecore Connection Library Functions@{Ecore Connection Library Functions}}
\doxysubsubsection{\texorpdfstring{ecore\_con\_lookup()}{ecore\_con\_lookup()}}
{\footnotesize\ttfamily \mbox{\hyperlink{Elua_8h_a3db3556eec8ef18cb8ddb43816974ac8}{EAPI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+con\+\_\+lookup (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{\mbox{\hyperlink{group__Ecore__Con__Lib__Group_ga9fcf024da9857192f9405c12cb6a90d9}{Ecore\+\_\+\+Con\+\_\+\+Dns\+\_\+\+Cb}}}]{done\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Do an asynchronous DNS lookup. 

This function performs a DNS lookup on the hostname specified by name, then calls done\+\_\+cb with the result and the data given as parameter. The result will be given to the done\+\_\+cb as follows\+:

canonname -\/ the canonical name of the address, ip -\/ the resolved ip address, addr -\/ a pointer to the socket address, addrlen -\/ the length of the socket address, in bytes, data -\/ the data pointer given as parameter.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em name} & IP address or server name to translate. \\
\hline
\mbox{\texttt{ in}}  & {\em done\+\_\+cb} & Callback to notify when done. \\
\hline
\mbox{\texttt{ in}}  & {\em data} & User data to be given to done\+\_\+cb.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if the request did not fail to be set up, {\ttfamily false} otherwise. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples]\par
\mbox{\hyperlink{ecore_con_lookup_example_8c-example}{ecore\+\_\+con\+\_\+lookup\+\_\+example.\+c}}.\end{Desc}


References EINA\+\_\+\+FALSE, eina\+\_\+list\+\_\+append(), EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+GOTO, EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL, EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+TRUE\+\_\+\+RETURN\+\_\+\+VAL, and EINA\+\_\+\+TRUE.

