Net::LD...ryChange(3)

🌸 NAME 🌸

okay so bestie, this is the User Contributed Perl Documentation for Net::LDAP::Control::EntryChange(3) β€” yes, the manual name is long and iconic β€” and the actual NAME section is:

Net::LDAP::Control::EntryChange β€” LDAPv3 Entry Change Notification control object. πŸ’…


✨ SYNOPSIS ✨

here's the whole demo, exactly as the page shows it, no edits:

use Net::LDAP;
use Net::LDAP::Control::PersistentSearch;
use Net::LDAP::Constant qw(LDAP_CONTROL_ENTRYCHANGE);

$ldap = Net::LDAP->new( "ldap.mydomain.eg" );

$persist = Net::LDAP::Control::PersistentSearch->new( changeTypes => 15,
                                                      changesOnly => 1,
                                                      returnECs => 1 );

$srch = $ldap->search( base     => "cn=People,dc=mydomain,dc=eg",
                       filter   => "(objectClass=person)",
                       callback => \&process_entry, # call for each entry
                       control  => [ $persist ] );

die "error: ",$srch->code(),": ",$srch->error()  if ($srch->code());

sub process_entry {
  my $message = shift;
  my $entry = shift;
  my ($control) = $message->control(LDAP_CONTROL_ENTRYCHANGE);

  print $control->changeType()."\t".$entry->dn()."\n";
}

πŸ¦‹ DESCRIPTION πŸ¦‹

Net::LDAP::Control::EntryChange provides an interface for the creation and manipulation of objects that represent the EntryChangeNotification control as described by draft-smith-psearch-ldap-03.txt. it's giving very specific LDAPv3 energy, and honestly? obsessed. ✨

πŸŽ€ CONSTRUCTOR ARGUMENTS πŸŽ€

in addition to the constructor arguments described in Net::LDAP::Control the following are provided, bestie:

  • changeType β€” an integer value telling the type of LDAP operation that the entry has undergone. it is one of the following values (which represent the LDAP operations indicated next to them):
    • 1 = add
    • 2 = delete
    • 4 = modify
    • 8 = modDN
  • previousDN β€” when changeType is 8 (for modDN) this parameter tells the entry's DN before the modDN operation. in all other cases this value is not defined.
  • changeNumber β€” this is the change number according to <draft-good-ldap-changelog-03.txt> assigned by a server for the change. if a server supports an LDAP Change Log it should include this field.

usually you do not need to create a Net::LDAP::Control::EntryChange control yourself because it is provided by the server in response to an option with the Net::LDAP::Control::PersistentSearch control. so like… let the server do its thing, periodt. πŸ‘‘

πŸ’œ METHODS πŸ’œ

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. cute, consistent, lowkey reliable. 🫢

🌈 SEE ALSO 🌈

  • Net::LDAP
  • Net::LDAP::Control
  • Net::LDAP::Control::PersistentSearch

🌟 AUTHOR 🌟

Peter Marschall <peter@adpm.de>, based on Net::LDAP::Control::Page from Graham Barr <gbarr@pobox.com> and the preparatory work of Don Miller <donm@uidaho.edu>.

please report any bugs, or post any suggestions, to the perl-ldap mailing list <perl-ldap@perl.org>. the group chat is open, bestie. πŸ’Œ

Copyright (c) 2004 Peter Marschall. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. iconic legal text, no notes. πŸ’…


okay that's the whole page, bestie β€” this one is from perl v5.42.0, dated 2024-01-02, and the footer tag is Net::LD...ryChange(3). mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from