/usr/share/perl5/Net/LDAP/Extension/Refresh.pm is in libnet-ldap-perl 1:0.6500+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | package Net::LDAP::Extension::Refresh;
require Net::LDAP::Extension;
our @ISA = qw(Net::LDAP::Extension);
our $VERSION = '0.03';
use Convert::ASN1;
my $refreshReq = Convert::ASN1->new;
$refreshReq->prepare(q<SEQUENCE {
entryName [0] OCTET STRING, -- originally: LDAPDN
requestTtl [1] INTEGER
}>);
my $refreshResp = Convert::ASN1->new;
$refreshResp->prepare(q<SEQUENCE {
responseTtl [0] INTEGER
}>);
sub Net::LDAP::refresh {
my $ldap = shift;
my %opt = @_;
my $res = $ldap->extension (
name => '1.3.6.1.4.1.1466.101.119.1',
value => $refreshReq->encode(\%opt),
($opt{control} ? (control => $opt{control}) : ())
);
bless $res;
}
sub get_ttl {
my $self = shift;
my $out = $refreshResp->decode($self->response);
$out->{responseTtl};
}
1;
__END__
=head1 NAME
Net::LDAP::Extension::Refresh - LDAPv3 Refresh extension object (RFC 2589)
=head1 SYNOPSIS
use Net::LDAP;
use Net::LDAP::Extension::Refresh;
$ldap = Net::LDAP->new('localhost');
$ldap->bind('cn=admin,dc=example,dc=com', password => 'password');
$mesg = $ldap->refresh(entryName => 'cn=dynamic,dc=example,dc=com',
requestTtl => 100);
die "error :", $mesg->code(), ": ", $mesg->error() if ($mesg->code());
print "TTL changed to ", $mesg->get_ttl(), "\n";
=head1 DESCRIPTION
C<Net::LDAP::Extension::Refresh> implements the C<Refresh> extended LDAPv3
operation as described in RFC 2589
It implements no object by itself but extends the L<Net::LDAP> object
by another method:
=head1 METHODS
=over 4
=item refresh ( OPTIONS )
Send a refresh operation for an object.
OPTIONS is a list of key/value pairs. The following keys are recognized:
=over 4
=item entryName
This option contains the object to refresh. It must be a DN.
=item requestTtl
This option contains the TTL in seconds requested. The server may choose to
set another value as stated in RFC 2589
=back
=item get_ttl ( )
Return the TTL set by the server during the previous C<refresh> call.
This method is a method of the L<Net::LDAP::Message> response object
returned in reply to C<refresh()> in case the C<refresh()> call succeeded.
=back
=head1 SEE ALSO
L<Net::LDAP>,
L<Net::LDAP::Extension>
=head1 AUTHOR
Etienne Bagnoud E<lt>etienne.bagnoud@irovision.chE<gt>
Adapted from Graham Barr L<Net::LDAP::Extension::SetPassword>
Documentation adapted from Peter Marschall L<Net::LDAP::Extension::SetPassword>
Please report any bugs, or post any suggestions, to the perl-ldap
mailing list E<lt>perl-ldap@perl.orgE<gt>
=head1 COPYRIGHT
Copyright (c) 2010 Etienne Bagnoud. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same
terms as Perl itself.
=cut
|