table of contents
| API(3pm) | User Contributed Perl Documentation | API(3pm) |
NAME¶
Mozilla::LDAP::API - Perl methods for LDAP C API calls
SYNOPSIS¶
use Mozilla::LDAP::API;
or
use Mozilla::LDAP::API qw(:api :ssl :constant);
or
use Mozilla::LDAP::API qw(:api :ssl :apiv3 :constant);
or
use Mozilla::LDAP::API qw(:api :ssl :apiv3 :nspr :constant);
DESCRIPTION¶
This package offers a direct interface to the LDAP C API calls from Perl. It is used internally by the other Mozilla::LDAP modules. It is highly suggested that you use the object oriented interface in Mozilla::LDAP::Conn and Mozilla::LDAP::Entry unless you need to use asynchronous calls or other functionality not available in the OO interface.THIS DOCUMENT¶
This document has a number of known errors that will be corrected in the next revision. Since it is not expected that users will need to use this interface frequently, priority was placed on other documents. You can find examples of how to actually use the API calls under the test_api directory.CREATING AN ADD/MODIFY HASH¶
For the add and modify routines you will need to generate a list of attributes and values. You will do this by creating a HASH table. Each attribute in the hash contains associated values. These values can be one of three things. - SCALAR VALUE (ex. "Clayton Donley")
- ARRAY REFERENCE (ex. ["Clayton Donley","Clay Donley"])
- HASH REFERENCE (ex. {"r",["Clayton Donley"]}
note: the value inside the HASH REFERENCE must currently
be an ARRAY REFERENCE.
The key inside the HASH REFERENCE must be one of the following for a modify
operation:
- "a" for LDAP_MOD_ADD (Add these values to the attribute)
- "r" for LDAP_MOD_REPLACE (Replace these values in the attribute)
- "d" for LDAP_MOD_DELETE (Delete these values from the attribute) Additionally, in add and modify operations, you may specify "b" if the attributes you are adding are BINARY (ex. "rb" to replace binary). Currently, it is only possible to do one operation per add/modify operation, meaning you can't do something like:
{"d",["Clayton"],"a",["Clay"]} <-- WRONG!
Using any combination of the above value types, you can do things like:
%ldap_modifications = (
"cn", "Clayton Donley", # Replace 'cn' values
"givenname", ["Clayton","Clay"], # Replace 'givenname' values
"mail", {"a",["donley\@cig.mcel.mot.com"], #Add 'mail' values
"jpegphoto", {"rb",[$jpegphotodata]}, # Replace Binary jpegPhoto ); Then remember to call the add or modify operations with a REFERENCE to this HASH.
API Methods¶
The following are the available API methods for Mozilla::LDAP::API. Many of these items have bad examples and OUTPUT information. Other information should be correct.- ldap_abandon(ld,msgid)
- DESCRIPTION:
Abandon an asynchronous LDAP operationINPUT:
ld - LDAP Session Handle
msgid - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_abandon($ld,$msgid);
- ldap_abandon_ext(ld,msgid,serverctrls,clientctrls)
- DESCRIPTION:
Abandon an asynchronous LDAP operation w/ ControlsINPUT:
ld - LDAP Session Handle
msgid - Integer
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_abandon_ext($ld,$msgid,$serverctrls,$clientctrls);
- ldap_add(ld,dn,attrs)
- DESCRIPTION:
Asynchronously add a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
attrs - LDAP Add/Modify HashOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_add($ld,$dn,$attrs);
- ldap_add_ext(ld,dn,attrs,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously add a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
attrs - LDAP Add/Modify Hash
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_add_ext($ld,$dn,$attrs,$serverctrls,$clientctrls,$msgidp);
- ldap_add_ext_s(ld,dn,attrs,serverctrls,clientctrls)
- DESCRIPTION:
Synchronously add a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
attrs - LDAP Add/Modify Hash
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_add_ext_s($ld,$dn,$attrs,$serverctrls,$clientctrls);
- ldap_add_s(ld,dn,attrs)
- DESCRIPTION:
Synchronously add a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
attrs - LDAP Add/Modify HashOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_add_s($ld,$dn,$attrs);
- ldap_ber_free(ber,freebuf)
- DESCRIPTION:
Free a BER element pointerINPUT:
ber - BER Element Pointer
freebuf - IntegerOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_ber_free($ber,$freebuf);
- ldap_bind(ld,dn,passwd,authmethod)
- DESCRIPTION:
Asynchronously bind to the LDAP serverINPUT:
ld - LDAP Session Handle
dn - String
passwd - String
authmethod - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_bind($ld,$dn,$passwd,$authmethod);
- ldap_bind_s(ld,dn,passwd,authmethod)
- DESCRIPTION:
Synchronously bind to a LDAP serverINPUT:
ld - LDAP Session Handle
dn - String
passwd - String
authmethod - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_bind_s($ld,$dn,$passwd,$authmethod);
- ldap_compare(ld,dn,attr,value)
- DESCRIPTION:
Asynchronously compare an attribute/value pair and an entryINPUT:
ld - LDAP Session Handle
dn - String
attr - String
value - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_compare($ld,$dn,$attr,$value);
- ldap_compare_ext(ld,dn,attr,bvalue,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously compare an attribute/value pair and an entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
attr - String
bvalue - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_compare_ext($ld,$dn,$attr,$bvalue,$serverctrls,$clientctrls,$msgidp);
- ldap_compare_ext_s(ld,dn,attr,bvalue,serverctrls,clientctrls)
- DESCRIPTION:
Synchronously compare an attribute/value pair to an entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
attr - String
bvalue - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_compare_ext_s($ld,$dn,$attr,$bvalue,$serverctrls,$clientctrls);
- ldap_compare_s(ld,dn,attr,value)
- DESCRIPTION:
Synchronously compare an attribute/value pair to an entryINPUT:
ld - LDAP Session Handle
dn - String
attr - String
value - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_compare_s($ld,$dn,$attr,$value);
- ldap_control_free(ctrl)
- DESCRIPTION:
Free a LDAP control pointerINPUT:
ctrl - LDAP Control PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_control_free($ctrl);
- ldap_controls_count(ctrls)
- DESCRIPTION:
Count the number of LDAP controls in a LDAP Control ListINPUT:
ctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_controls_count($ctrls);
- ldap_controls_free(ctrls)
- DESCRIPTION:
Free a list of LDAP controlsINPUT:
ctrls - LDAP Control List PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_controls_free($ctrls);
- ldap_count_entries(ld,result)
- DESCRIPTION:
Count the number of LDAP entries returnedINPUT:
ld - LDAP Session Handle
result - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$count = ldap_count_entries($ld,$result);
- ldap_count_messages(ld,result)
- DESCRIPTION:
Count the number of LDAP messages returnedINPUT:
ld - LDAP Session Handle
result - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_count_messages($ld,$result);
- ldap_count_references(ld,result)
- DESCRIPTION:
Count the number of LDAP references returnedINPUT:
ld - LDAP Session Handle
result - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_count_references($ld,$result);
- ldap_create_filter(buf,buflen,pattern,prefix,suffix,attr,value,valwords)
- DESCRIPTION:
Create a LDAP search filterINPUT:
buf - String
buflen - Integer
pattern - String
prefix - String
suffix - String
attr - String
value - String
valwords - List ReferenceOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_create_filter($buf,$buflen,$pattern,$prefix,$suffix,$attr,$value,$valwords);
- ldap_create_persistentsearch_control(ld,changetypes,changesonly,return_echg_ctrls,ctrl_iscritical,ctrlp)
- DESCRIPTION:
Create a persistent search controlINPUT:
ld - LDAP Session Handle
changetypes - Integer
changesonly - Integer
return_echg_ctrls - Integer
ctrl_iscritical - Integer
ctrlp - LDAP Control List PointerOUTPUT:
status - Integer
ctrlp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_create_persistentsearch_control($ld,$changetypes,$changesonly,$return_echg_ctrls,$ctrl_iscritical,$ctrlp);
- ldap_create_sort_control(ld,sortKeyList,ctrl_iscritical,ctrlp)
- DESCRIPTION:
Create a LDAP sort controlINPUT:
ld - LDAP Session Handle
sortKeyList - Sort Key Pointer
ctrl_iscritical - Integer
ctrlp - LDAP Control List PointerOUTPUT:
status - Integer
ctrlp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_create_sort_control($ld,$sortKeyList,$ctrl_iscritical,$ctrlp);
- ldap_create_sort_keylist(sortKeyList,string_rep)
- DESCRIPTION:
Create a list of keys to be used by a sort controlINPUT:
sortKeyList - Sort Key Pointer
string_rep - StringOUTPUT:
status - Integer
sortKeyList - Sort Key PointerAVAILABILITY: V3EXAMPLE:$status = ldap_create_sort_keylist($sortKeyList,$string_rep);
- ldap_create_virtuallist_control(ld,ldvlistp,ctrlp)
- DESCRIPTION:
Create a LDAP virtual list controlINPUT:
ld - LDAP Session Handle
ctrlp - LDAP Control List PointerOUTPUT:
status - Integer
ctrlp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_create_virtuallist_control($ld,$ldvlistp,$ctrlp);
- ldap_delete(ld,dn)
- DESCRIPTION:
Asynchronously delete a LDAP entryINPUT:
ld - LDAP Session Handle
dn - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_delete($ld,$dn);
- ldap_delete_ext(ld,dn,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously delete a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_delete_ext($ld,$dn,$serverctrls,$clientctrls,$msgidp);
- ldap_delete_ext_s(ld,dn,serverctrls,clientctrls)
- DESCRIPTION:
Synchronously delete a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_delete_ext_s($ld,$dn,$serverctrls,$clientctrls);
- ldap_delete_s(ld,dn)
- DESCRIPTION:
Synchronously delete a LDAP entryINPUT:
ld - LDAP Session Handle
dn - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_delete_s($ld,$dn);
- ldap_dn2ufn(dn)
- DESCRIPTION:
Change a DN to a "Friendly" nameINPUT:
dn - StringOUTPUT:
status - StringAVAILABILITY: V2/V3EXAMPLE:$status = ldap_dn2ufn($dn);
- ldap_err2string(err)
- DESCRIPTION:
Return the string value of a LDAP error codeINPUT:
err - IntegerOUTPUT:
status - StringAVAILABILITY: V2/V3EXAMPLE:$status = ldap_err2string($err);
- ldap_explode_dn(dn,notypes)
- DESCRIPTION:
Split a given DN into its components. Setting 'notypes' to 1 returns the components without their type names.INPUT:
dn - String
notypes - IntegerOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_explode_dn($dn,$notypes);
- ldap_explode_rdn(dn,notypes)
- DESCRIPTION:
Split a Relative DN into its componentsINPUT:
dn - String
notypes - IntegerOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_explode_rdn($dn,$notypes);
- ldap_extended_operation(ld,requestoid,requestdata,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Perform an asynchronous extended operationINPUT:
ld - LDAP Session Handle
requestoid - String
requestdata - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_extended_operation($ld,$requestoid,$requestdata,$serverctrls,$clientctrls,$msgidp);
- ldap_extended_operation_s(ld,requestoid,requestdata,serverctrls,clientctrls,retoidp,retdatap)
- DESCRIPTION:
Perform a synchronous extended operationINPUT:
ld - LDAP Session Handle
requestoid - String
requestdata - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
retoidp - StringOUTPUT:
status - Integer
retoidp - Return OID
retdatap - Return DataAVAILABILITY: V3EXAMPLE:$status = ldap_extended_operation_s($ld,$requestoid,$requestdata,$serverctrls,$clientctrls,$retoidp,$retdatap);
- ldap_first_attribute(ld,entry,ber)
- DESCRIPTION:
Return the first attribute returned for a LDAP entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
ber - Ber Element PointerOUTPUT:
status - String
ber - Ber Element PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_first_attribute($ld,$entry,$ber);
- ldap_first_entry(ld,chain)
- DESCRIPTION:
Return the first entry in a LDAP result chainINPUT:
ld - LDAP Session Handle
chain - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_first_entry($ld,$chain);
- ldap_first_message(ld,res)
- DESCRIPTION:
Return the first message in a LDAP resultINPUT:
ld - LDAP Session Handle
res - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V3EXAMPLE:$status = ldap_first_message($ld,$res);
- ldap_first_reference(ld,res)
- DESCRIPTION:
Return the first reference in a LDAP resultINPUT:
ld - LDAP Session Handle
res - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V3EXAMPLE:$status = ldap_first_reference($ld,$res);
- ldap_free_friendlymap(map)
- DESCRIPTION:
Free a LDAP friendly map pointerINPUT:
map - Friendly Map PointerOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_free_friendlymap($map);
- ldap_free_sort_keylist(sortKeyList)
- DESCRIPTION:
Free a LDAP sort key pointerINPUT:
sortKeyList - Sort Key PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_free_sort_keylist($sortKeyList);
- ldap_free_urldesc(ludp)
- DESCRIPTION:
Free a LDAP URL description hash referenceINPUT:
ludp - URL Description Hash ReferenceOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_free_urldesc($ludp);
- ldap_friendly_name(filename,name,map)
- DESCRIPTION:
Create a LDAP friendly name mapINPUT:
filename - String
name - String
map - Friendly Map PointerOUTPUT:
status - StringAVAILABILITY: V3EXAMPLE:$status = ldap_friendly_name($filename,$name,$map);
- ldap_get_dn(ld,entry)
- DESCRIPTION:
Return the distinguished name for an entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message PointerOUTPUT:
status - StringAVAILABILITY: V2/V3EXAMPLE:$status = ldap_get_dn($ld,$entry);
- ldap_get_entry_controls(ld,entry,serverctrlsp)
- DESCRIPTION:
Return the controls for a LDAP entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
serverctrlsp - LDAP Control List PointerOUTPUT:
status - Integer
serverctrlsp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_get_entry_controls($ld,$entry,$serverctrlsp);
- ldap_getfilter_free(lfdp)
- DESCRIPTION:
Free a LDAP filterINPUT:
lfdp - LDAP Filter Description PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_getfilter_free($lfdp);
- ldap_getfirstfilter(lfdp,tagpat,value)
- DESCRIPTION:
Get the first generated filterINPUT:
lfdp - LDAP Filter Description Pointer
tagpat - StringOUTPUT:
status - LDAP Filter Information PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_getfirstfilter($lfdp,$tagpat,$value);
- ldap_get_lang_values(ld,entry,target,type)
- DESCRIPTION:
Get values for an entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
target - String
type - StringOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_get_lang_values($ld,$entry,$target,$type);
- ldap_get_lang_values_len(ld,entry,target,type)
- DESCRIPTION:
Get binary values for an entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
target - String
type - StringOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_get_lang_values_len($ld,$entry,$target,$type);
- ldap_get_lderrno(ld,m,s)
- DESCRIPTION:
INPUT:
ld - LDAP Session Handle
m - String Reference (or undef)
s - String Reference (or undef)OUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_get_lderrno($ld,\$m,\$s);
- ldap_getnextfilter(lfdp)
- DESCRIPTION:
Get the next generated LDAP filterINPUT:
lfdp - LDAP Filter Information PointerOUTPUT:
status - LDAP Filter Information PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_getnextfilter($lfdp);
- ldap_get_option(ld,option,optdata)
- DESCRIPTION:
Get an option for a LDAP sessionINPUT:
ld - LDAP Session Handle
option - Integer
optdata - IntegerOUTPUT:
status - Integer
optdata - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_get_option($ld,$option,$optdata);
- ldap_get_values(ld,entry,target)
- DESCRIPTION:
Get the values for a LDAP entry and attributeINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
target - StringOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_get_values($ld,$entry,$target);
- ldap_get_values_len(ld,entry,target)
- DESCRIPTION:
Get the binary values for a LDAP entry and attributeINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
target - StringOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_get_values_len($ld,$entry,$target);
- ldap_init(host,port)
- DESCRIPTION:
Initialize a LDAP sessionINPUT:
host - String
port - IntegerOUTPUT:
status - LDAP Session HandleAVAILABILITY: V2/V3EXAMPLE:$status = ldap_init($host,$port);
- ldap_init_getfilter(fname)
- DESCRIPTION:
Initialize the LDAP filter generation routines to a filenameINPUT:
fname - Filename StringOUTPUT:
status - LDAP Filter Description PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_init_getfilter($fname);
- ldap_init_getfilter_buf(buf,buflen)
- DESCRIPTION:
Initialize the LDAP filter generation routines to a bufferINPUT:
buf - String
buflen - IntegerOUTPUT:
status - LDAP Filter Description PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_init_getfilter_buf($buf,$buflen);
- ldap_is_ldap_url(url)
- DESCRIPTION:
Return 1 if an the argument is a valid LDAP URLINPUT:
url - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_is_ldap_url($url);
- ldap_memcache_destroy(cache)
- DESCRIPTION:
Destroy a memory cacheINPUT:
cache - LDAP Memory Cache PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_memcache_destroy($cache);
- ldap_memcache_flush(cache,dn,scope)
- DESCRIPTION:
Flush a specific DN from the memory cacheINPUT:
cache - LDAP Memory Cache Pointer
dn - String
scope - IntegerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_memcache_flush($cache,$dn,$scope);
- ldap_memcache_get(ld,cachep)
- DESCRIPTION:
Get the memory cache for a LDAP sessionINPUT:
ld - LDAP Session Handle
cachep - LDAP Memory Cache PointerOUTPUT:
status - Integer
cachep - LDAP Memory Cache PointerAVAILABILITY: V3EXAMPLE:$status = ldap_memcache_get($ld,$cachep);
- ldap_memcache_init(ttl,size,baseDNs,cachep)
- DESCRIPTION:
Initialize a LDAP memory cacheINPUT:
ttl - Integer
size - Integer
baseDNs - List Reference
cachep - LDAP Memory Cache PointerOUTPUT:
status - Integer
cachep - LDAP Memory Cache PointerAVAILABILITY: V3EXAMPLE:$status = ldap_memcache_init($ttl,$size,$baseDNs,$cachep);
- ldap_memcache_set(ld,cache)
- DESCRIPTION:
Set the LDAP memory cache for the sessionINPUT:
ld - LDAP Session Handle
cache - LDAP Memory Cache PointerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_memcache_set($ld,$cache);
- ldap_memcache_update(cache)
- DESCRIPTION:
Update the specified memory cacheINPUT:
cache - LDAP Memory Cache PointerOUTPUT:
status - NONEAVAILABILITY: V3EXAMPLE:$status = ldap_memcache_update($cache);
- ldap_memfree(p)
- DESCRIPTION:
Free memory allocated by the LDAP C APIINPUT:
p - PointerOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_memfree($p);
- ldap_modify(ld,dn,mods)
- DESCRIPTION:
Asynchronously modify a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
mods - LDAP Add/Modify HashOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modify($ld,$dn,$mods);
- ldap_modify_ext(ld,dn,mods,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously modify a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
mods - LDAP Add/Modify Hash
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_modify_ext($ld,$dn,$mods,$serverctrls,$clientctrls,$msgidp);
- ldap_modify_ext_s(ld,dn,mods,serverctrls,clientctrls)
- DESCRIPTION:
Synchronously modify a LDAP entry w/ ControlsINPUT:
ld - LDAP Session Handle
dn - String
mods - LDAP Add/Modify Hash
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_modify_ext_s($ld,$dn,$mods,$serverctrls,$clientctrls);
- ldap_modify_s(ld,dn,mods)
- DESCRIPTION:
Synchronously modify a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
mods - LDAP Add/Modify HashOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modify_s($ld,$dn,$mods);
- ldap_modrdn(ld,dn,newrdn)
- DESCRIPTION:
Asynchronously modify the relative distinguished name of an entryINPUT:
ld - LDAP Session Handle
dn - String
newrdn - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modrdn($ld,$dn,$newrdn);
- ldap_modrdn_s(ld,dn,newrdn)
- DESCRIPTION:
Synchronously modify the relative distinguished name of an entryINPUT:
ld - LDAP Session Handle
dn - String
newrdn - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modrdn_s($ld,$dn,$newrdn);
- ldap_modrdn2(ld,dn,newrdn,deleteoldrdn)
- DESCRIPTION:
Asynchronously modify the relative distinguished name of an entry.INPUT:
ld - LDAP Session Handle
dn - String
newrdn - String
deleteoldrdn - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modrdn2($ld,$dn,$newrdn,$deleteoldrdn);
- ldap_modrdn2_s(ld,dn,newrdn,deleteoldrdn)
- DESCRIPTION:
Synchronously modify the relative distinguished name of an entry.INPUT:
ld - LDAP Session Handle
dn - String
newrdn - String
deleteoldrdn - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_modrdn2_s($ld,$dn,$newrdn,$deleteoldrdn);
- ldap_msgfree(lm)
- DESCRIPTION:
Free memory allocated by a LDAP MessageINPUT:
lm - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_msgfree($lm);
- ldap_msgid(lm)
- DESCRIPTION:
Get the message id number from a LDAP messageINPUT:
lm - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_msgid($lm);
- ldap_msgtype(lm)
- DESCRIPTION:
Get the message type of a LDAP messageINPUT:
lm - LDAP Message PointerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_msgtype($lm);
- ldap_multisort_entries(ld,chain,attr)
- DESCRIPTION:
Sort entries by multiple keysINPUT:
ld - LDAP Session Handle
chain - LDAP Message Pointer
attr - List ReferenceOUTPUT:
status - Integer
chain - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_multisort_entries($ld,$chain,$attr);
- ldap_next_attribute(ld,entry,ber)
- DESCRIPTION:
Get the next attribute for a LDAP entryINPUT:
ld - LDAP Session Handle
entry - LDAP Message Pointer
ber - Ber Element PointerOUTPUT:
status - String
ber - BER Element PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_next_attribute($ld,$entry,$ber);
- ldap_next_entry(ld,entry)
- DESCRIPTION:
Get the next entry in the result chainINPUT:
ld - LDAP Session Handle
entry - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_next_entry($ld,$entry);
- ldap_next_message(ld,msg)
- DESCRIPTION:
Get the next message in the result chainINPUT:
ld - LDAP Session Handle
msg - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V3EXAMPLE:$status = ldap_next_message($ld,$msg);
- ldap_next_reference(ld,ref)
- DESCRIPTION:
Get the next reference in the result chainINPUT:
ld - LDAP Session Handle
ref - LDAP Message PointerOUTPUT:
status - LDAP Message PointerAVAILABILITY: V3EXAMPLE:$status = ldap_next_reference($ld,$ref);
- ldap_parse_entrychange_control(ld,ctrls,chgtypep,prevdnp,chgnumpresentp,chgnump)
- DESCRIPTION:
Parse a LDAP entry change controlINPUT:
ld - LDAP Session Handle
ctrls - LDAP Control List Pointer
chgtypep - Integer
prevdnp - String
chgnumpresentp - Integer
chgnump - IntegerOUTPUT:
status - Integer
chgtypep - Integer
prevdnp - String
chgnumpresentp - Integer
chgnump - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_parse_entrychange_control($ld,$ctrls,$chgtypep,$prevdnp,$chgnumpresentp,$chgnump);
- ldap_parse_extended_result(ld,res,retoidp,retdatap,freeit)
- DESCRIPTION:
Parse a LDAP extended resultINPUT:
ld - LDAP Session Handle
res - LDAP Message Pointer
retoidp - String
freeit - IntegerOUTPUT:
status - Integer
retoidp - String
retdatap - Binary List ReferenceAVAILABILITY: V3EXAMPLE:$status = ldap_parse_extended_result($ld,$res,$retoidp,$retdatap,$freeit);
- ldap_parse_reference(ld,ref,referalsp,serverctrlsp,freeit)
- DESCRIPTION:
Parse a LDAP ReferenceINPUT:
ld - LDAP Session Handle
ref - LDAP Message Pointer
referalsp - List Reference
serverctrlsp - LDAP Control List Pointer
freeit - IntegerOUTPUT:
status - Integer
referalsp - List Reference
serverctrlsp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_parse_reference($ld,$ref,$referalsp,$serverctrlsp,$freeit);
- ldap_parse_result(ld,res,errcodep,matcheddnp,errmsgp,referralsp,serverctrlsp,freeit)
- DESCRIPTION:
Parse a LDAP resultINPUT:
ld - LDAP Session Handle
res - LDAP Message Pointer
errcodep - Integer
matcheddnp - String
errmsgp - String
referralsp - List Reference
serverctrlsp - LDAP Control List Pointer
freeit - IntegerOUTPUT:
status - Integer
errcodep - Integer
matcheddnp - String
errmsgp - String
referralsp - List Reference
serverctrlsp - LDAP Control List PointerAVAILABILITY: V3EXAMPLE:$status = ldap_parse_result($ld,$res,$errcodep,$matcheddnp,$errmsgp,$referralsp,$serverctrlsp,$freeit);
- ldap_parse_sasl_bind_result(ld,res,servercredp,freeit)
- DESCRIPTION:
Parse the results of an SASL bind operationINPUT:
ld - LDAP Session Handle
res - LDAP Message Pointer
freeit - IntegerOUTPUT:
status - Integer
servercredp -AVAILABILITY: V3EXAMPLE:$status = ldap_parse_sasl_bind_result($ld,$res,$servercredp,$freeit);
- ldap_parse_sort_control(ld,ctrls,result,attribute)
- DESCRIPTION:
Parse a LDAP sort controlINPUT:
ld - LDAP Session Handle
ctrls - LDAP Control List Pointer
result - LDAP Message Pointer
attribute - StringOUTPUT:
status - Integer
result - LDAP Message Pointer
attribute - StringAVAILABILITY: V3EXAMPLE:$status = ldap_parse_sort_control($ld,$ctrls,$result,$attribute);
- ldap_parse_virtuallist_control(ld,ctrls,target_posp,list_sizep,errcodep)
- DESCRIPTION:
Parse a LDAP virtual list controlINPUT:
ld - LDAP Session Handle
ctrls - LDAP Control List Pointer
target_posp - Integer
list_sizep - Integer
errcodep - IntegerOUTPUT:
status - Integer
target_posp - Integer
list_sizep - Integer
errcodep - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_parse_virtuallist_control($ld,$ctrls,$target_posp,$list_sizep,$errcodep);
- ldap_perror(ld,s)
- DESCRIPTION:
Print a LDAP error messageINPUT:
ld - LDAP Session Handle
s - StringOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_perror($ld,$s);
- ldap_rename(ld,dn,newrdn,newparent,deleteoldrdn,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously rename a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
newrdn - String
newparent - String
deleteoldrdn - Integer
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_rename($ld,$dn,$newrdn,$newparent,$deleteoldrdn,$serverctrls,$clientctrls,$msgidp);
- ldap_rename_s(ld,dn,newrdn,newparent,deleteoldrdn,serverctrls,clientctrls)
- DESCRIPTION:
Synchronously rename a LDAP entryINPUT:
ld - LDAP Session Handle
dn - String
newrdn - String
newparent - String
deleteoldrdn - Integer
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_rename_s($ld,$dn,$newrdn,$newparent,$deleteoldrdn,$serverctrls,$clientctrls);
- ldap_result(ld,msgid,all,timeout,result)
- DESCRIPTION:
Get the result for an asynchronous LDAP operationINPUT:
ld - LDAP Session Handle
msgid - Integer
all - Integer
timeout - Time in Seconds
result - LDAP Message PointerOUTPUT:
status - Integer
result - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_result($ld,$msgid,$all,$timeout,$result);
- ldap_result2error(ld,r,freeit)
- DESCRIPTION:
Get the error number for a given resultINPUT:
ld - LDAP Session Handle
r - LDAP Message Pointer
freeit - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_result2error($ld,$r,$freeit);
- ldap_sasl_bind(ld,dn,mechanism,cred,serverctrls,clientctrls,msgidp)
- DESCRIPTION:
Asynchronously bind to the LDAP server using a SASL mechanismINPUT:
ld - LDAP Session Handle
dn - String
mechanism - String
cred - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_sasl_bind($ld,$dn,$mechanism,$cred,$serverctrls,$clientctrls,$msgidp);
- ldap_sasl_bind_s(ld,dn,mechanism,cred,serverctrls,clientctrls,servercredp)
- DESCRIPTION:
Synchronously bind to a LDAP server using a SASL mechanismINPUT:
ld - LDAP Session Handle
dn - String
mechanism - String
cred - Binary String
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List PointerOUTPUT:
status - Integer
servercredp -AVAILABILITY: V3EXAMPLE:$status = ldap_sasl_bind_s($ld,$dn,$mechanism,$cred,$serverctrls,$clientctrls,$servercredp);
- ldap_search(ld,base,scope,filter,attrs,attrsonly)
- DESCRIPTION:
Asynchronously search the LDAP serverINPUT:
ld - LDAP Session Handle
base - String
scope - Integer
filter - String
attrs - List Reference
attrsonly - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_search($ld,$base,$scope,$filter,$attrs,$attrsonly);
- ldap_search_ext(ld,base,scope,filter,attrs,attrsonly,serverctrls,clientctrls,timeoutp,sizelimit,msgidp)
- DESCRIPTION:
Asynchronously search the LDAP server w/ ControlsINPUT:
ld - LDAP Session Handle
base - String
scope - Integer
filter - String
attrs - List Reference
attrsonly - Integer
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
timeoutp - Time in Seconds
sizelimit - Integer
msgidp - IntegerOUTPUT:
status - Integer
msgidp - IntegerAVAILABILITY: V3EXAMPLE:$status = ldap_search_ext($ld,$base,$scope,$filter,$attrs,$attrsonly,$serverctrls,$clientctrls,$timeoutp,$sizelimit,$msgidp);
- ldap_search_ext_s(ld,base,scope,filter,attrs,attrsonly,serverctrls,clientctrls,timeoutp,sizelimit,res)
- DESCRIPTION:
Synchronously search the LDAP server w/ ControlsINPUT:
ld - LDAP Session Handle
base - String
scope - Integer
filter - String
attrs - List Reference
attrsonly - Integer
serverctrls - LDAP Control List Pointer
clientctrls - LDAP Control List Pointer
timeoutp - Time in Seconds
sizelimit - Integer
res - LDAP Message PointerOUTPUT:
status - Integer
res - LDAP Message PointerAVAILABILITY: V3EXAMPLE:$status = ldap_search_ext_s($ld,$base,$scope,$filter,$attrs,$attrsonly,$serverctrls,$clientctrls,$timeoutp,$sizelimit,$res);
- ldap_search_s(ld,base,scope,filter,attrs,attrsonly,res)
- DESCRIPTION:
Synchronously search the LDAP serverINPUT:
ld - LDAP Session Handle
base - String
scope - Integer
filter - String
attrs - List Reference
attrsonly - Integer
res - LDAP Message PointerOUTPUT:
status - Integer
res - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_search_s($ld,$base,$scope,$filter,$attrs,$attrsonly,$res);
- ldap_search_st(ld,base,scope,filter,attrs,attrsonly,timeout,res)
- DESCRIPTION:
Synchronously search the LDAP server w/ TimeoutINPUT:
ld - LDAP Session Handle
base - String
scope - Integer
filter - String
attrs - List Reference
attrsonly - Integer
timeout - Time in Seconds
res - LDAP Message PointerOUTPUT:
status - Integer
res - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_search_st($ld,$base,$scope,$filter,$attrs,$attrsonly,$timeout,$res);
- ldap_set_filter_additions(lfdp,prefix,suffix)
- DESCRIPTION:
Add a prefix and suffix for filter generationINPUT:
lfdp - LDAP Filter Description Pointer
prefix - String
suffix - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_set_filter_additions($lfdp,$prefix,$suffix);
- ldap_set_lderrno(ld,e,m,s)
- DESCRIPTION:
Set the LDAP error structureINPUT:
ld - LDAP Session Handle
e - Integer
m - String
s - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_set_lderrno($ld,$e,$m,$s);
- ldap_set_option(ld,option,optdata)
- DESCRIPTION:
Set a LDAP session optionINPUT:
ld - LDAP Session Handle
option - Integer
optdata - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_set_option($ld,$option,$optdata);
- ldap_set_rebind_proc(ld,rebindproc)
- DESCRIPTION:
Set the LDAP rebind processINPUT:
ld - LDAP Session HandleOUTPUT:
status - NONEAVAILABILITY: V2/V3EXAMPLE:$status = ldap_set_rebind_proc($ld,$rebindproc);
- ldap_simple_bind(ld,who,passwd)
- DESCRIPTION:
Asynchronously bind to the LDAP server using simple authenticationINPUT:
ld - LDAP Session Handle
who - String
passwd - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_simple_bind($ld,$who,$passwd);
- ldap_simple_bind_s(ld,who,passwd)
- DESCRIPTION:
Synchronously bind to the LDAP server using simple authenticationINPUT:
ld - LDAP Session Handle
who - String
passwd - StringOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_simple_bind_s($ld,$who,$passwd);
- ldap_sort_entries(ld,chain,attr)
- DESCRIPTION:
Sort the results of a LDAP searchINPUT:
ld - LDAP Session Handle
chain - LDAP Message Pointer
attr - StringOUTPUT:
status - Integer
chain - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_sort_entries($ld,$chain,$attr);
- ldap_unbind(ld)
- DESCRIPTION:
Asynchronously unbind from the LDAP serverINPUT:
ld - LDAP Session HandleOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_unbind($ld);
- ldap_unbind_s(ld)
- DESCRIPTION:
Synchronously unbind from a LDAP serverINPUT:
ld - LDAP Session HandleOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_unbind_s($ld);
- ldap_url_parse(url)
- DESCRIPTION:
Parse a LDAP URL, returning a HASH of its componentsINPUT:
url - StringOUTPUT:
status -AVAILABILITY: V2/V3EXAMPLE:$status = ldap_url_parse($url);
- ldap_url_search(ld,url,attrsonly)
- DESCRIPTION:
Asynchronously search using a LDAP URLINPUT:
ld - LDAP Session Handle
url - String
attrsonly - IntegerOUTPUT:
status - IntegerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_url_search($ld,$url,$attrsonly);
- ldap_url_search_s(ld,url,attrsonly,res)
- DESCRIPTION:
Synchronously search using a LDAP URLINPUT:
ld - LDAP Session Handle
url - String
attrsonly - Integer
res - LDAP Message PointerOUTPUT:
status - Integer
res - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_url_search_s($ld,$url,$attrsonly,$res);
- ldap_url_search_st(ld,url,attrsonly,timeout,res)
- DESCRIPTION:
Synchronously search using a LDAP URL w/ timeoutINPUT:
ld - LDAP Session Handle
url - String
attrsonly - Integer
timeout - Time in Seconds
res - LDAP Message PointerOUTPUT:
status - Integer
res - LDAP Message PointerAVAILABILITY: V2/V3EXAMPLE:$status = ldap_url_search_st($ld,$url,$attrsonly,$timeout,$res);
- prldap_install_routines(ld,shared)
- DESCRIPTION:
Install NSPR I/O, threading, and DNS functions so they can be used by the LDAP connection (ld).If 'ld' is NULL, the functions are installed as the default functions for all new LDAP * handles).INPUT:
ld - LDAP Session Handle
shared - True if the LDAP * handle is used in an MT contextOUTPUT:
status - IntegerAVAILABILITY: V3
CREDITS¶
Most of the Perl API module was written by Clayton Donley to interface with C API routines from Netscape Communications Corp., Inc.BUGS¶
Documentation needs much work. LDAPv3 calls not tested or supported in this version. NT can not use Perl Rebind processes, must use 'ldap_set_default_rebindproc'. Possible memory leak in ldap_search* is being investigated.SEE ALSO¶
Mozilla::LDAP::Conn, Mozilla::LDAP::Entry, and PerlPOD ERRORS¶
Hey! The above document had some coding errors, which are explained below:- Around line 500:
- '=item' outside of any '=over'
- Around line 2959:
- You forgot a '=back' before '=head1'
| 2007-06-14 | perl v5.14.2 |