/usr/share/perl5/Net/LDAP/Filter.pod 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 120 121 122 123 124 125 | =head1 NAME
Net::LDAP::Filter - representation of LDAP filters
=head1 SYNOPSIS
use Net::LDAP::Filter;
$filter = Net::LDAP::Filter->new( $filter_str );
=head1 DESCRIPTION
The B<Net::LDAP::Filter> object lets you directly manipulate LDAP
filters without worrying about the string representation and all the
associated escaping mechanisms.
=head1 CONSTRUCTOR
=over 4
=item new ( [ FILTER ] )
Create a new object.
If FILTER is given, parse it.
=back
=head1 METHODS
=over 4
=item parse ( FILTER )
Parse FILTER, updating the object to represent it.
=item as_string
Return the filter in text form.
=item print ( [ FH ] )
Print the text representation of the filter to FH, or the currently
selected output handle if FH is not given.
=item negate ( )
Logically negate/invert the filter object so that it matches the opposite
set of entries as the original.
Instead of simply negating the text form by surrounding it with the B<not>
operator, the negation is done by recursively applying I<De Morgan's law>.
Here is an example:
(|(&(cn=A)(cn=B))(|(!(cn=C))(cn=D)))
gets negated to
(&(|(!(cn=A))(!(cn=B)))(&(cn=C)(!(cn=D))))
=back
=head1 FILTER SYNTAX
Below is the syntax for a filter given in RFC 4515
http://www.ietf.org/rfc/rfc4515.txt
filter = "(" filtercomp ")"
filtercomp = and / or / not / item
and = "&" filterlist
or = "|" filterlist
not = "!" filter
filterlist = 1*filter
item = simple / present / substring / extensible
simple = attr filtertype value
filtertype = equal / approx / greater / less
equal = "="
approx = "~="
greater = ">="
less = "<="
extensible = attr [":dn"] [":" matchingrule] ":=" value
/ [":dn"] ":" matchingrule ":=" value
present = attr "=*"
substring = attr "=" [initial] any [final]
initial = value
any = "*" *(value "*")
final = value
attr = AttributeDescription from Section 4.1.4 of RFC 4511
matchingrule = MatchingRuleId from Section 4.1.8 of RFC 4511
value = AttributeValue from Section 4.1.5 of RFC 4511
Special Character encodings
---------------------------
* \2a, \*
( \28, \(
) \29, \)
\ \5c, \\
NUL \00
=head1 SEE ALSO
L<Net::LDAP>,
L<Other online documentation|Net::LDAP::RFC>
=head1 ACKNOWLEDGEMENTS
This document is based on a document originally written by Russell Fulton
E<lt>r.fulton@auckland.ac.nzE<gt>.
=head1 AUTHOR
Graham Barr E<lt>gbarr@pobox.comE<gt>
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) 1997-2004 Graham Barr. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same
terms as Perl itself.
=cut
|