Dua
view release on metacpan or search on metacpan
void
dua_find (session, rdn, filter, scope, all)
ldap_session_t *session
char *rdn
char *filter
int scope
int all
PREINIT:
atlist_t * atlist;
register atlist_t *temp;
PPCODE:
atlist = (atlist_t *) 0;
dua_find(session,rdn,filter,scope,1,all,&atlist);
temp = atlist;
while (temp != NULL)
{
XPUSHs(sv_2mortal(newSVpv(temp->attr,0)));
XPUSHs(sv_2mortal(newSVpv(temp->value,0)));
temp = temp->next;
}
dua_freelist (atlist);
void
dua_show (session,rdn)
ldap_session_t *session
char *rdn
PREINIT:
atlist_t * atlist;
register atlist_t *temp;
PPCODE:
atlist = (atlist_t *) 0;
dua_find(session,rdn,NULL,0,0,0,&atlist);
temp = atlist;
while (temp != NULL)
{
XPUSHs(sv_2mortal(newSVpv(temp->attr,0)));
XPUSHs(sv_2mortal(newSVpv(temp->value,0)));
temp = temp->next;
}
dua_freelist (atlist);
PREINIT:
int scope = LDAP_SCOPE_BASE;
char *filter = "objectclass=*";
char attrsonly = 0;
char *attrs[2];
struct berval **values;
char **attribute;
LDAPMessage *result, *entry;
int i;
PPCODE:
attrs[0] = attr;
attrs[1] = NULL;
if (ldap_search_s(session->dua_ld,rdn,scope,filter,attrs,attrsonly,&result)
!= LDAP_SUCCESS) {
ldap_perror(session->dua_ld,"ldap_search_s");
return;
}
if (ldap_count_entries(session->dua_ld,result) != 1) {
( run in 0.672 second using v1.01-cache-2.11-cpan-5511b514fd6 )