Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 750aa820f1f75caac19955f06bc89df7 > files > 43

libeXosip2-devel-3.5.0-1.fc16.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>libeXosip2: eXosip2 configuration API</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">libeXosip2&#160;<span id="projectnumber">3.1.0</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">eXosip2 configuration API</div>  </div>
<div class="ingroups"><a class="el" href="group__eXosip2__setup.html">General purpose API.</a></div></div>
<div class="contents">
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gad4afb8e4f2ba6412f98e4cc55c0f32b8">eXosip_init</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga03f2a9d54e88cbc36341cd2fcb91b05b">eXosip_quit</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gae0d5d2b0423a638fa085128b6912c74a">eXosip_execute</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga6acc560aca3aa64ebf315f670c9ae31c">eXosip_set_option</a> (int opt, const void *value)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga039d93925ac6d1fdf35c68d6c6c435f5">eXosip_lock</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gacb362e00f0e5fb68ae53f18d846cd891">eXosip_unlock</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gaf5a34da148ee43a7c4cd9e7e3f0f07a5">eXosip_get_srv_record</a> (struct osip_srv_record *record, char *domain, char *protocol)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga426c3a785e31a89b3c7c1909716f1cf0">eXosip_get_naptr</a> (char *domain, char *protocol, char *srv_record, int max_length)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga4648d9560a905179aafa939caca622f5">eXosip_listen_addr</a> (int transport, const char *addr, int port, int family, int secure)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga53b1301ba9761255f7ec71acdb89bd74">eXosip_set_socket</a> (int transport, int socket, int port)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gac58abf4a2579d34a3315740107790d55">eXosip_set_user_agent</a> (const char *user_agent)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gad5a6f1ae19bfc8305a64284db5045236">eXosip_get_version</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga8b1ea773346b5d6a92b33851a785cacc">eXosip_set_cbsip_message</a> (CbSipCallback cbsipCallback)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gabf881c83da7f6c25e791938c18824a4e">eXosip_enable_ipv6</a> (int ipv6_enable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#gabd30814449260a3a69e11eaec444f245">eXosip_masquerade_contact</a> (const char *public_address, int port)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__eXosip2__conf.html#ga977e8a8567177fce827da56c27a1e2ab">eXosip_find_free_port</a> (int free_port, int transport)</td></tr>
</table>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gad4afb8e4f2ba6412f98e4cc55c0f32b8"></a><!-- doxytag: member="eX_setup.h::eXosip_init" ref="gad4afb8e4f2ba6412f98e4cc55c0f32b8" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_init </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Initiate the eXtented oSIP library. </p>

</div>
</div>
<a class="anchor" id="ga03f2a9d54e88cbc36341cd2fcb91b05b"></a><!-- doxytag: member="eX_setup.h::eXosip_quit" ref="ga03f2a9d54e88cbc36341cd2fcb91b05b" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void eXosip_quit </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Release ressource used by the eXtented oSIP library. </p>

</div>
</div>
<a class="anchor" id="gae0d5d2b0423a638fa085128b6912c74a"></a><!-- doxytag: member="eX_setup.h::eXosip_execute" ref="gae0d5d2b0423a638fa085128b6912c74a" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_execute </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Process (non-threaded mode ONLY) eXosip events. </p>

</div>
</div>
<a class="anchor" id="ga6acc560aca3aa64ebf315f670c9ae31c"></a><!-- doxytag: member="eX_setup.h::eXosip_set_option" ref="ga6acc560aca3aa64ebf315f670c9ae31c" args="(int opt, const void *value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_set_option </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>opt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set eXosip options. See eXosip_option for available options.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">opt</td><td>option to configure. </td></tr>
    <tr><td class="paramname">value</td><td>value for options. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga039d93925ac6d1fdf35c68d6c6c435f5"></a><!-- doxytag: member="eX_setup.h::eXosip_lock" ref="ga039d93925ac6d1fdf35c68d6c6c435f5" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_lock </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Lock the eXtented oSIP library. </p>

</div>
</div>
<a class="anchor" id="gacb362e00f0e5fb68ae53f18d846cd891"></a><!-- doxytag: member="eX_setup.h::eXosip_unlock" ref="gacb362e00f0e5fb68ae53f18d846cd891" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_unlock </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>UnLock the eXtented oSIP library. </p>

</div>
</div>
<a class="anchor" id="gaf5a34da148ee43a7c4cd9e7e3f0f07a5"></a><!-- doxytag: member="eX_setup.h::eXosip_get_srv_record" ref="gaf5a34da148ee43a7c4cd9e7e3f0f07a5" args="(struct osip_srv_record *record, char *domain, char *protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_get_srv_record </td>
          <td>(</td>
          <td class="paramtype">struct osip_srv_record *&#160;</td>
          <td class="paramname"><em>record</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>domain</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>protocol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Ask for SRV record.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">record</td><td>result structure. </td></tr>
    <tr><td class="paramname">domain</td><td>domain name for SRV record </td></tr>
    <tr><td class="paramname">protocol</td><td>protocol to use </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga426c3a785e31a89b3c7c1909716f1cf0"></a><!-- doxytag: member="eX_setup.h::eXosip_get_naptr" ref="ga426c3a785e31a89b3c7c1909716f1cf0" args="(char *domain, char *protocol, char *srv_record, int max_length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_get_naptr </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>domain</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>protocol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>srv_record</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Ask for NAPTR request.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">domain</td><td>domain name for SRV record </td></tr>
    <tr><td class="paramname">protocol</td><td>protocol to use </td></tr>
    <tr><td class="paramname">srv_record</td><td>result structure. </td></tr>
    <tr><td class="paramname">max_length</td><td>sizeof srv_record. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4648d9560a905179aafa939caca622f5"></a><!-- doxytag: member="eX_setup.h::eXosip_listen_addr" ref="ga4648d9560a905179aafa939caca622f5" args="(int transport, const char *addr, int port, int family, int secure)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_listen_addr </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>transport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>addr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>family</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>secure</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Listen on a specified socket.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">transport</td><td>IPPROTO_UDP for udp. (soon to come: TCP/TLS?) </td></tr>
    <tr><td class="paramname">addr</td><td>the address to bind (NULL for all interface) </td></tr>
    <tr><td class="paramname">port</td><td>the listening port. (0 for random port) </td></tr>
    <tr><td class="paramname">family</td><td>the IP family (AF_INET or AF_INET6). </td></tr>
    <tr><td class="paramname">secure</td><td>0 for UDP or TCP, 1 for TLS (with TCP). </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga53b1301ba9761255f7ec71acdb89bd74"></a><!-- doxytag: member="eX_setup.h::eXosip_set_socket" ref="ga53b1301ba9761255f7ec71acdb89bd74" args="(int transport, int socket, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_set_socket </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>transport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>socket</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>port</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Listen on a specified socket.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">transport</td><td>IPPROTO_UDP for udp. (soon to come: TCP/TLS?) </td></tr>
    <tr><td class="paramname">socket</td><td>socket to use for listening to UDP sip messages. </td></tr>
    <tr><td class="paramname">port</td><td>the listening port for masquerading. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac58abf4a2579d34a3315740107790d55"></a><!-- doxytag: member="eX_setup.h::eXosip_set_user_agent" ref="gac58abf4a2579d34a3315740107790d55" args="(const char *user_agent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void eXosip_set_user_agent </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>user_agent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set the SIP User-Agent: header string.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">user_agent</td><td>the User-Agent header to insert in messages. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad5a6f1ae19bfc8305a64284db5045236"></a><!-- doxytag: member="eX_setup.h::eXosip_get_version" ref="gad5a6f1ae19bfc8305a64284db5045236" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* eXosip_get_version </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the eXosip version as a sring </p>

</div>
</div>
<a class="anchor" id="ga8b1ea773346b5d6a92b33851a785cacc"></a><!-- doxytag: member="eX_setup.h::eXosip_set_cbsip_message" ref="ga8b1ea773346b5d6a92b33851a785cacc" args="(CbSipCallback cbsipCallback)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_set_cbsip_message </td>
          <td>(</td>
          <td class="paramtype">CbSipCallback&#160;</td>
          <td class="paramname"><em>cbsipCallback</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set a callback to get sent and received SIP messages.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">cbsipCallback</td><td>the callback to retreive messages. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabf881c83da7f6c25e791938c18824a4e"></a><!-- doxytag: member="eX_setup.h::eXosip_enable_ipv6" ref="gabf881c83da7f6c25e791938c18824a4e" args="(int ipv6_enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void eXosip_enable_ipv6 </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>ipv6_enable</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Use IPv6 instead of IPv4.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ipv6_enable</td><td>This paramter should be set to 1 to enable IPv6 mode. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabd30814449260a3a69e11eaec444f245"></a><!-- doxytag: member="eX_setup.h::eXosip_masquerade_contact" ref="gabd30814449260a3a69e11eaec444f245" args="(const char *public_address, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void eXosip_masquerade_contact </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>public_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>port</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This method is used to replace contact address with the public address of your NAT. The ip address should be retreived manually (fixed IP address) or with STUN. This address will only be used when the remote correspondant appears to be on an DIFFERENT LAN.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">public_address</td><td>the ip address. </td></tr>
    <tr><td class="paramname">port</td><td>the port for masquerading.</td></tr>
  </table>
  </dd>
</dl>
<p>If set to NULL, then the local ip address will be guessed automatically (returns to default mode). </p>

</div>
</div>
<a class="anchor" id="ga977e8a8567177fce827da56c27a1e2ab"></a><!-- doxytag: member="eX_setup.h::eXosip_find_free_port" ref="ga977e8a8567177fce827da56c27a1e2ab" args="(int free_port, int transport)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int eXosip_find_free_port </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>free_port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>transport</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This method is used to find out an free IPPROTO_UDP or IPPROTO_TCP port.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">free_port</td><td>initial port for search. </td></tr>
    <tr><td class="paramname">transport</td><td>IPPROTO_UDP or IPPROTO_TCP protocol. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Fri Sep 2 2011 for libeXosip2 by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>