Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Net::LDAP::Schema
Load and manipulate an LDAP v3 Schema

Net::LDAP::Schema - Load and manipulate an LDAP v3 Schema


NAME

Net::LDAP::Schema - Load and manipulate an LDAP v3 Schema


SYNOPSIS


 use Net::LDAP;

 use Net::LDAP::Schema;

 #

 # Read schema from server

 #

 $ldap = Net::LDAP->new ( $server );

 $ldap->bind ( );

 $schema = $ldap->schema ( );

 #

 # Load from LDIF

 #

 $schema = Net::LDAP::Schema->new;

 $schema->parse ( "schema.ldif" ) or die $schema->error;


DESCRIPTION

Net::LDAP::Schema provides a means to load an LDAP schema and query it for information regarding supported objectclasses, attributes and syntaxes.


METHODS

Where a method is stated as taking the 'name or oid' of a schema item (which may be an object class, attribute or syntax) then a case-insensitive name or raw oid (object identifier, in dotted numeric string form, e.g. 2.5.4.0) may be supplied.

Each returned item of schema (eg an attribute definition) is returned in a HASH. The keys in the returned HASH are lowercased versions of the keys read from the server. Here's a partial list (not all HASHes define all keys) although note that RFC 2252 permits other keys as well:


 name

 desc

 obsolete

 sup

 equality

 ordering

 substr

 syntax

 single-value

 collective

 no-user-modification

 usage

 abstract

 structural

 auxiliary

 must

 may

 applies

 aux

 not

 oc

 form
all_attributes ( )
all_ditcontentrules ( )
all_ditstructurerules ( )
all_matchingrules ( )
all_matchingruleuses ( )
all_nameforms ( )
all_objectclasses ( )
all_syntaxes ( )
Returns a list of all the requested types in the schema.

attribute ( NAME )
ditcontentrule ( NAME )
ditstructurerule ( NAME )
matchingrule ( NAME )
matchingruleuse ( NAME )
nameform ( NAME )
objectclass ( NAME )
syntax ( NAME )
Returns a reference to a hash, or undef if the schema item does not exist. NAME can be a name or an OID.

 $attr_href = $schema->attribute( "attrname" );

dump ( )
Dump the raw schema information to standard out.

dump ( FILENAME )
Dump the raw schema information to a file.

 $result = $schema->dump ( "./schema.dump" );

If no schema data is returned from directory server, the method will return undefined. Otherwise a value of 1 is always returned.

error ( )
Returns the last error encountered when parsing the schema.

may ( OBJECTCLASS )
Given an argument which is the name or oid of a known object class, returns a list of HASHes describing the attributes which are optional in the class.

  @may = $schema->may ( $oc );

  # First optional attr has the name '$may[0]->{name}'

must ( OBJECTCLASS )
Given an argument which is the name or oid of a known object class, returns a list of HASHes describing the attributes which are mandatory in the class.

  @must = $schema->must ( $oc );

parse ( MESG )
parse ( ENTRY )
parse ( FILENAME )
Takes a single argument which can be any of, a message object returned from an LDAP search, a Net::LDAP::Entry object or the name of a file containing an LDIF form of the schema.

If the argument is a message result from a search, Net::LDAP::Schema will parse the schema from the first entry returned.

Returns true on success and undef on error.

superclass ( NAME )
Given an argument which is the name or oid of a known objectclass, returns the list of names of the immediate superclasses.


SEE ALSO

the Net::LDAP manpage, the Net::LDAP::RFC manpage


AUTHORS

Graham Barr <gbarr@pobox.com> John Berthels <jjb@nexor.co.uk>

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


COPYRIGHT

Copyright (c) 1998-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.

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy