Hey Chris I have tried that 

but it returns exactly no that a page size is set to, If you set the
page size to a value greater than admin limit it would return the amount
of entries <eq> to admin limit.

logically I need the flow need to go this way

{search first 999 entries}
    <do processing>
   {search next 1000 - 1999 entries} 
         <do processing>
     ... continues till the time all the entries are processed

What I am missing out is how to leave a pointer at 999 th entry 

Looks like I am making some mistake while implementing
Net::LDAP::Control::Paged

I have a work around this ..by splitting the searches on OU .. but not a
good way to code , :(

Regards,
Yash


-----Original Message-----
From: Chris Ridd [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, July 01, 2008 2:26 PM
To: Vartak, Yash V
Cc: perl-ldap@perl.org
Subject: Re: Net::LDAP :: Admin limit on AD (Work around)


On 1 Jul 2008, at 07:14, Vartak, Yash V wrote:

> Dist,
>
> I am using Net::LDAP to generate reports out of Microsoft Active
> Directory, here my LDAP filter is expected to return roughly around
> 12,000 - 13,000 records.
>
> But due to Admin limits on Active Directory the number of entries
> returned are restricted to 1000, due to security reasons it's not
> possible to increase admin limit on AD.
>
> What could be work around for this particular problem? So that the
> search returns full 12000 + records and I can process all of them  
> later,
> instead of present 1000

Does your Active Directory support Paged Results? Use:

        $root_dse = $ldap->root_dse;
        if ($root_dse->supported_control(LDAP_CONTROL_PAGED)) {
            # do paged results searches here
            # Read Net::LDAP::Control::Paged for details and an example
        }

(Typed in Mail, but you get the idea.) Paged Results will give you  
multiple sets ("pages") of results, each set usually being smaller  
than the admin limit. But the overall number of results will usually  
be greater than the admin limit.

Cheers,

Chris

Reply via email to