Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 71d40963b505df4524269198e237b3e3 > files > 377

virtuoso-opensource-doc-6.1.4-2.fc14.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
 <head profile="http://internetalchemy.org/2003/02/profile">
  <link rel="foaf" type="application/rdf+xml" title="FOAF" href="http://www.openlinksw.com/dataspace/uda/about.rdf" />
  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
  <meta name="dc.title" content="Function: ldap_search - Virtuoso Functions Guide" />
  <meta name="dc.subject" content="Function: ldap_search - Virtuoso Functions Guide" />
  <meta name="dc.creator" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="dc.copyright" content="OpenLink Software, 1999 - 2009" />
  <link rel="top" href="index.html" title="OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="search" href="/doc/adv_search.vspx" title="Search OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="parent" href="functions.html" title="Chapter Contents" />
  <link rel="prev" href="appendixa.html" title="Appendix" />
  <link rel="next" href="functions.html#.html" title="" />
  <link rel="shortcut icon" href="../images/misc/favicon.ico" type="image/x-icon" />
  <link rel="stylesheet" type="text/css" href="doc.css" />
  <link rel="stylesheet" type="text/css" href="/doc/translation.css" />
  <title>Function: ldap_search - Virtuoso Functions Guide</title>
  <meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" />
  <meta name="author" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="copyright" content="OpenLink Software, 1999 - 2009" />
  <meta name="keywords" content="" />
  <meta name="GENERATOR" content="OpenLink XSLT Team" />
 </head>
 <body>
  <div id="header">
    <a name="fn_ldap_search" />
    <img src="../images/misc/logo.jpg" alt="" />
    <h1>22. Virtuoso Functions Guide - ldap_search</h1>
  </div>
  <div id="navbartop">
   <div>
      <a class="link" href="functions.html">Chapter Contents</a> | <a class="link" href="functions.html#jvmpl" title="Virtuoso Java PL API">Prev</a> | <a class="link" href="fn_ldap_delete.html" title="ldap_delete">Next</a>
   </div>
  </div>
  <div id="currenttoc">
   <form method="post" action="/doc/adv_search.vspx">
    <div class="search">Keyword Search: <br />
        <input type="text" name="q" /> <input type="submit" name="go" value="Go" />
    </div>
   </form>
   <div>
      <a href="http://www.openlinksw.com/">www.openlinksw.com</a>
   </div>
   <div>
      <a href="http://docs.openlinksw.com/">docs.openlinksw.com</a>
   </div>
    <br />
   <div>
      <a href="index.html">Book Home</a>
   </div>
    <br />
   <div>
      <a href="contents.html">Contents</a>
   </div>
   <div>
      <a href="preface.html">Preface</a>
   </div>
    <br />
   <div>
      <a class="selected" href="functions.html">Virtuoso Functions Guide</a>
   </div>
    <br />
   <div>
      <a href="functions.html#admin">Administration</a>
   </div>
   <div>
      <a href="functions.html#aggr">Aggregate Functions</a>
   </div>
   <div>
      <a href="functions.html#array">Array Manipulation</a>
   </div>
   <div>
      <a href="functions.html#bpel">BPEL APIs</a>
   </div>
   <div>
      <a href="functions.html#backup">Backup</a>
   </div>
   <div>
      <a href="functions.html#compression">Compression</a>
   </div>
   <div>
      <a href="functions.html#cursors">Cursor</a>
   </div>
   <div>
      <a href="functions.html#time">Date &amp; Time Manipulation</a>
   </div>
   <div>
      <a href="functions.html#debug">Debug</a>
   </div>
   <div>
      <a href="functions.html#dict">Dictionary Manipulation</a>
   </div>
   <div>
      <a href="functions.html#encoding">Encoding &amp; Decoding</a>
   </div>
   <div>
      <a href="functions.html#file">File Manipulation</a>
   </div>
   <div>
      <a href="functions.html#ft">Free Text</a>
   </div>
   <div>
      <a href="functions.html#hash">Hashing / Cryptographic</a>
   </div>
   <div>
      <a class="selected" href="functions.html#ldap">LDAP</a>
   </div>
   <div class="selected">
    <div>
        <a href="fn_ldap_add.html">ldap_add</a>
    </div>
    <div>
        <a href="fn_ldap_delete.html">ldap_delete</a>
    </div>
    <div>
        <a href="fn_ldap_modify.html">ldap_modify</a>
    </div>
    <div>
        <a class="selected" href="fn_ldap_search.html">ldap_search</a>
    </div>
   </div>
   <div>
      <a href="functions.html#localization">Locale</a>
   </div>
   <div>
      <a href="functions.html#mail">Mail</a>
   </div>
   <div>
      <a href="functions.html#misc">Miscellaneous</a>
   </div>
   <div>
      <a href="functions.html#number">Number</a>
   </div>
   <div>
      <a href="functions.html#phrz">Phrases</a>
   </div>
   <div>
      <a href="functions.html#rdf">RDF data</a>
   </div>
   <div>
      <a href="functions.html#rmt">Remote SQL Data Source</a>
   </div>
   <div>
      <a href="functions.html#repl">Replication</a>
   </div>
   <div>
      <a href="functions.html#soap">SOAP</a>
   </div>
   <div>
      <a href="functions.html#sql">SQL</a>
   </div>
   <div>
      <a href="functions.html#string">String</a>
   </div>
   <div>
      <a href="functions.html#txn">Transaction</a>
   </div>
   <div>
      <a href="functions.html#type">Type Mapping</a>
   </div>
   <div>
      <a href="functions.html#uddi">UDDI</a>
   </div>
   <div>
      <a href="functions.html#udt">User Defined Types &amp; The CLR</a>
   </div>
   <div>
      <a href="functions.html#vad">VAD</a>
   </div>
   <div>
      <a href="functions.html#jvmpl">Virtuoso Java PL API</a>
   </div>
   <div>
      <a href="functions.html#bif">Virtuoso Server Extension Interface (VSEI)</a>
   </div>
   <div>
      <a href="functions.html#ws">Web &amp; Internet</a>
   </div>
   <div>
      <a href="functions.html#xml">XML</a>
   </div>
   <div>
      <a href="functions.html#XPATH">XPATH &amp; XQUERY</a>
   </div>
    <br />
   <div>
      <a href="functionidx.html">Functions Index</a>
   </div>
    <br />
  </div>
  <div id="text">
    <h2>ldap_search</h2>
    <div class="refpurpose">Search in an LDAP server.</div>
    <div class="funcsynopsis">
        <span class="funcdef">any <span class="function">ldap_search</span>
      </span>
	(<span class="paramdef">in <span class="parameter">server_url </span>varchar</span>, 
	<span class="paramdef">in <span class="parameter">try_tls </span>integer</span>, 
	<span class="paramdef">in <span class="parameter">base </span>varchar</span>, 
	<span class="paramdef">in <span class="parameter">filter </span>varchar</span>, 
	<span class="paramdef">in <span class="parameter">username </span>varchar</span>, 
	<span class="paramdef">in <span class="parameter">password </span>varchar</span>);
      </div>
  
  
  
  <div class="refsect1">
      <div class="refsect1title">Description</div>
      <p>
This function performs a search in the LDAP server.  It returns control to
the Virtuoso/PL environment only after all of the search results have been sent by the server
or if the search request is timed out by the server.  The result of the search
(attributes, names of the attributes, etc.) will be returned as an array result.  Options
to the LDAP search can be passed as an array.
</p>
    </div>
  <div class="refsect1">
      <div class="refsect1title">Parameters</div>
    <div class="refsect2">
        <span class="refsect2title">server_url – </span>
      The server URL has three parts, &lt;protocol&gt;://&lt;host&gt;:&lt;port&gt;.
Missing parameters will be defaulted to <span class="computeroutput">&lt;ldap://localhost:389&gt;</span>.</div>
    <div class="refsect2">
        <span class="refsect2title">try_tls – </span>
      <span class="computeroutput">try_tls</span> is a flag that tells the client to perform a handshake
with the LDAP server using a secure connection.  This is only applicable to the ldap:// protocol and not
ldaps://.  If a secure connection cannot be made, the connection will be insecure.</div>
    <div class="refsect2">
        <span class="refsect2title">base – </span>
      <span class="computeroutput">base</span> is a string representing the DN base of the search.</div>
    <div class="refsect2">
        <span class="refsect2title">filter – </span>
      Filter is a string representation of the filter to apply in the 
	  search.  Simple filters can be specified as 
	  <span class="computeroutput">attributetype=attributevalue</span>.  More 
	  complex filters are specified using a prefix  notation  according
       to the following BNF:
<div>
          <pre class="programlisting">
&lt;filter&gt; ::= &#39;(&#39; &lt;filtercomp&gt; &#39;)&#39;
  &lt;filtercomp&gt; ::= &lt;and&gt; | &lt;or&gt; | &lt;not&gt; | &lt;simple&gt;
  &lt;and&gt; ::= &#39;&amp;&#39; &lt;filterlist&gt;
  &lt;or&gt; ::= &#39;|&#39; &lt;filterlist&gt;
  &lt;not&gt; ::= &#39;!&#39; &lt;filter&gt;
  &lt;filterlist&gt; ::= &lt;filter&gt; | &lt;filter&gt; &lt;filterlist&gt;
  &lt;simple&gt; ::= &lt;attributetype&gt; &lt;filtertype&gt; &lt;attributevalue&gt;
  &lt;filtertype&gt; ::= &#39;=&#39; | &#39;~=&#39; | &#39;&lt;=&#39; | &#39;&gt;=&#39;
</pre>
        </div>
</div>
    <div class="refsect2">
        <span class="refsect2title">username – </span>
      username authorization credential</div>
    <div class="refsect2">
        <span class="refsect2title">password – </span>
      password authorization credential</div>
  </div>
  <div class="refsect1">
      <div class="refsect1title">Return Types</div>
      <p>
This function returns an array consisting of the following elements:
</p>
<div>
        <pre class="screen">
&lt;entry type&gt;, (&lt;attribute name&gt;, (&lt;value 1&gt;, &lt;value 2&gt; ...))
</pre>
      </div>
<p>
The <span class="computeroutput">entry type</span> can be the keyword &#39;entry&#39; for search entry, &#39;reference&#39; for search reference,
&#39;extended&#39; for extended result, or &#39;result&#39; for result from search.  When
you specify &#39;result&#39;,
the returned array consists of &#39;error&#39; and &#39;error message&#39; keywords corresponding
to error codes and error descriptions.</p>
</div>

  <div class="refsect1title">Errors</div>
    <table class="data">
      
       <tr>
        <th class="data">SQLState</th>
        <th class="data">Error Code</th>
        <th class="data">Error Text</th>
        <th class="data">Description</th>
      </tr>
	
	  <tr>
	    <td class="data">
          <a name="err2E000" />
          <span class="errorcode">2E000</span>
        </td>
	    <td class="data">
          <a name="errLD020" />
          <span class="errorcode">LD020</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to load the wldap32.dll</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err2E000" />
          <span class="errorcode">2E000</span>
        </td>
	    <td class="data">
          <a name="errLD005" />
          <span class="errorcode">LD005</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to initialize LDAP connection: &lt;reason&gt; (&lt;reason code&gt;)</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err2E000" />
          <span class="errorcode">2E000</span>
        </td>
	    <td class="data">
          <a name="errLD006" />
          <span class="errorcode">LD006</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to set LDAP version option: &lt;reason&gt; (&lt;reason code&gt;)</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err2E000" />
          <span class="errorcode">2E000</span>
        </td>
	    <td class="data">
          <a name="errLD016" />
          <span class="errorcode">LD016</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to start TLS: &lt;reason&gt; (&lt;reason code&gt;)</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err28000" />
          <span class="errorcode">28000</span>
        </td>
	    <td class="data">
          <a name="errLD007" />
          <span class="errorcode">LD007</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to bind synchronous LDAP connection: &lt;reason&gt; (&lt;reason code&gt;)</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err42000" />
          <span class="errorcode">42000</span>
        </td>
	    <td class="data">
          <a name="errLD008" />
          <span class="errorcode">LD008</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to search</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err39000" />
          <span class="errorcode">39000</span>
        </td>
	    <td class="data">
          <a name="errLD002" />
          <span class="errorcode">LD002</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to parse LDAP reference response</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err39000" />
          <span class="errorcode">39000</span>
        </td>
	    <td class="data">
          <a name="errLD003" />
          <span class="errorcode">LD003</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to parse LDAP extended result</span>
        </td>
	    <td class="data" />
	  </tr>
	
	
	  <tr>
	    <td class="data">
          <a name="err39000" />
          <span class="errorcode">39000</span>
        </td>
	    <td class="data">
          <a name="errLD004" />
          <span class="errorcode">LD004</span>
        </td>
	    <td class="data">
          <span class="errorname">Failed to parse LDAP extended partial result</span>
        </td>
	    <td class="data" />
	  </tr>
	
      
    </table>
    <br />
  <p />

  <div class="refsect1">
      <div class="refsect1title">Examples</div>
    <a name="ex_ldap_search" />
      <div class="example">

<div>
          <pre class="programlisting">
....
declare result any;

-- without authentication
result := ldap_search (&#39;ldap://localhost&#39;, 0, &#39;c=US&#39;, &#39;(cn=SomeBody*)&#39;, NULL);

or

-- with authentication
result := ldap_search (&#39;ldap://localhost&#39;, 0, &#39;c=US&#39;, &#39;(cn=SomeBody*)&#39;,
  &#39;cn=root,o=opl,c=US&#39;, &#39;secret&#39;);

-- the result may be following array:
-- (&quot;entry&quot;
     (&quot;dn&quot; &quot;cn=&quot;John Atanasov&quot;,mail=hellraisor@hotmail.com,c=US,o=hotmail.com&quot;
      &quot;mail&quot; (&quot;hellraisor@hotmail.com&quot; )
      &quot;cn&quot; (&quot;John Atanasov&quot; )
      &quot;o&quot; (&quot;hotmail.com&quot; )
      &quot;l&quot; (&quot;SOFIA&quot; )
      &quot;givenName&quot; (&quot;John&quot; )
      &quot;surname&quot; (&quot;Atanasov&quot; ))
     &quot;result&quot;
       (&quot;error&quot; &quot;0&quot; &quot;error message&quot; &quot;Success&quot; ))

...
</pre>
        </div>
    </div>
  </div>
  <div class="refsect1">
      <div class="refsect1title">See Also</div> <p>
        <a href="fn_ldap_add.html">ldap_add()</a>,<a href="fn_ldap_delete.html">ldap_delete()</a>,<a href="fn_ldap_modify.html">ldap_modify()</a>
      </p>
  </div>
</div>
  <div id="footer">
    <div>Copyright© 1999 - 2009 OpenLink Software All rights reserved.</div>
   <div id="validation">
    <a href="http://validator.w3.org/check/referer">
        <img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" />
    </a>
    <a href="http://jigsaw.w3.org/css-validator/">
        <img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" height="31" width="88" />
    </a>
   </div>
  </div>
 </body>
</html>