DOKK / manpages / debian 12 / libnet-ldap-perl / Net::LDAP::Control::SyncRequest.3pm.en
Net::LDAP::Control::SyncRequest(3pm) User Contributed Perl Documentation Net::LDAP::Control::SyncRequest(3pm)

Net::LDAP::Control::SyncRequest - LDAPv3 Sync Request control object

 use Net::LDAP;
 use Net::LDAP::Control::SyncRequest;
 use Net::LDAP::Constant qw(
  LDAP_SYNC_REFRESH_ONLY
  LDAP_SYNC_REFRESH_AND_PERSIST
  LDAP_SUCCESS );
 $ldap = Net::LDAP->new( "ldap.mydomain.eg" );
 $req = Net::LDAP::Control::SyncRequest->new( mode => LDAP_SYNC_REFRESH_ONLY );
 my $mesg = $ldap->search(base=> 'dc=mydomain,dc='eg',
                          scope    => 'sub',
                          control  => [ $req ],
                          callback => \&searchCallback, # call for each entry
                          filter   => "(objectClass=*)",
                          attrs    => [ '*']);
 sub searchCallback {
   my $message = shift;
   my $entry = shift;
   my @controls = $message->control;
   if ($controls[0]->isa('Net::LDAP::Control::SyncState')) {
     print "Received Sync State Control\n";
     print $entry->dn()."\n";
     print 'State: '.$controls[0]->state."\n".', entryUUID: '.$controls[0]->entryUUID.', cookie: '.$controls[0]->cookie;
   } elsif ($controls[0]->isa('Net::LDAP::Control::SyncDone')) {
     print "Received Sync Done Control\n";
     print 'Cookie: '.$controls[0]->cookie.', refreshDeletes: '.$controls[0]->refreshDeletes;
   }
 }

"Net::LDAP::Control::SyncRequest" provides an interface for the creation and manipulation of objects that represent the "Sync Request Control" as described by RFC 4533.

In addition to the constructor arguments described in Net::LDAP::Control the following are provided.

As with Net::LDAP::Control each constructor argument described above is also available as a method on the object which will return the current value for the attribute if called without an argument, and set a new value for the attribute if called with an argument.

Net::LDAP, Net::LDAP::Control, Net::LDAP::Control::SyncState, Net::LDAP::Control::SyncDone, http://www.ietf.org/rfc/rfc4533.txt

Mathieu Parent <math.parent@gmail.com>

Please report any bugs, or post any suggestions, to the perl-ldap mailing list <perl-ldap@perl.org>

Copyright (c) 2008 Mathieu Parent. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2021-01-03 perl v5.32.0