Home » Networking » Net_LDAP
Object oriented interface for searching and manipulating LDAP-entries
This package is unmaintained.
Download latest release 1.1.5 (archived versions might be outdated)
License: LGPL License
Description
Net_LDAP is a clone of Perls Net::LDAP object interface to
directory servers. It does contain most of Net::LDAPs features
but has some own too.
With Net_LDAP you have:
* A simple object-oriented interface to connections, searches entries and filters.
* Support for tls and ldap v3.
* Simple modification, deletion and creation of ldap entries.
* Support for schema handling.
Net_LDAP layers itself on top of PHP's existing ldap extensions.
Documentation
Maintainers
- Tarjei Huse (tarjei) — lead, inactive
- Jan Wagner (jw) — lead, inactive
- Benedikt Hallinger (beni) — lead, active
Dependencies
Required
- PHP (>= 4.2)
- PEAR Installer (>= 1.5.0)
Releases
- 1.1.5 (stable, 2009-07-03)
Release notes
License: LGPL License
* Ported the fix (RFC-1777) in connect() from Net_LDAP2 v2.0.3
- 1.1.4 (stable, 2009-04-23)
Release notes
License: LGPL License
* Ported the connect() method from Net_LDAP2 since it fixes some connection issues
- 1.1.3 (stable, 2008-10-23)
Release notes
License: LGPL License
* Fixed a little issue with repetive adding the same attribute value (backported from Net_LDAP2)
* Fixed issue with repetitve adding or deleting values causing Net_LDAP to send the same change multiple times - 1.1.2 (stable, 2008-06-04)
Release notes
License: LGPL License
* Backportet a patch from Net_LDAP2. Schema->isBinary() did not checked attribute supertypes
* Backported a patch for Schema->isBinary() bug if unknown attribute type is requested
* Bugfix in filter class for approx matching - 1.1.1 (stable, 2008-03-19)
Release notes
License: LGPL License
This is just a bugfix release. Net_LDAP is superseeded by Net_LDAP2,
please use Net_LDAP2 unless you are forced to use PHP4.
* Fixed a problem with Net_LDAP_LDIF and files with DOS line endings - 1.1.0 (stable, 2008-02-27)
Release notes
License: LGPL License
* Fixed a little bug at cross directory move
* Fixed a bug when deleting a subtree containing several subentries that failed if
one called dnExists() prior calling delete()
* Fixed some minor bugs at NeT_LDAP->move() and Net_LDAP->dnExists()
* Added Net_LDAP tests
* Changed API of Net_LDAP->copy() to only accept Net_LDAP_Entry objects, because with DNs
Attribute values will be lost
/!\ This is the last release of Net_LDAP supporting PHP4 /!\ - 1.1.0a2 (beta, 2008-01-21)
Release notes
License: LGPL License
* Added parseLines() to Net_LDAP_LDIF for more convinience
* Added some handy methods to Net_LDAP_Entry
* Enhanced tests - 1.1.0a1 (beta, 2008-01-14)
Release notes
License: LGPL License
* Added LDIF reading and writing support
* Fixed minor issues of 1.0.0 release - 1.0.0 (stable, 2007-10-29)
Release notes
License: LGPL License
After more than four years of development, we are very proud to announce the
~ FIRST STABLE Net_LDAP RELEASE 1.0.0 ~
Net_LDAP ist tested now and should be stable enough for production use.
The API is finished so far, no changes should be neccessary in the future.Changes to Release candidate 4:
- Implemented PHPUnit tests
- Fixed some minor bugs of RC4 (including the schema loading warning-generation)
- Fixed several bugs in Net_LDAP_Util
- Improved Net_LDAP_Filter and Net_LDAP_Util error handling and code cleanness
- Completely implemented Net_LDAP_Filter perl interface
- Improved several doc comments and fixed some spelling errors - 1.0.0RC4 (beta, 2007-09-18)
Release notes
License: LGPL License
- Fixed some minor bugs of RC3
- Reintroduced $ldap parameter for
$entry-update(), but it is not prefferred to use this way.
The Parameter is there for perl interface compatibility - 1.0.0RC3 (beta, 2007-07-24)
Release notes
License: LGPL License
Fixed a bug with dnExists() that was caused mainly by bad behavior of Net_LDAP_UTIL::ldap_explode_dn().
Fixed a bug with call time pass-by-reference if calling $entry->update(); however this inflicted a API change:
The parameter $ldap is not available anymore, you need to use $entry->setLDAP() prior update now if you want to change the LDAP
object. This brought us a more logical API now, since Entry operations should be performed by the Net_LDAP object. - 1.0.0RC2 (beta, 2007-06-28)
Release notes
License: LGPL License
Net_LDAP->dnExists() uses the Util class now, which makes it safer.
A new move() method is available from Net_LDAP.
Please note, that the copy() method was removed from the Net_LDAP_Entry class since
people would expect attribute moving because of the overall API of Net_LDAP.
Instead use the more failsafer copy() from Net_LDAP. - 1.0.0RC1 (beta, 2007-06-20)
Release notes
License: LGPL License
Again some small Bugfixes, most notably a bug within $ldap->modify() that occured when using the
combined 'changes' array.
Besides that, $search->popEntry() and the corresponding alias pop_entry() has been implemented.
Net_LDAP_Util::unescape_filter_value() is available too now and Net_LDAP_Util::escape_filter_value()
can handle ASCII chars smaller than 32. Above that, Net_LDAP_Util::canonical_dn() has been fully implemented.
A new method createFresh() was added to Net_LDAP_Entry, so creation of initial entries is more
standardized and clearer.
A new example is available, describing the $ldap->modify() method.
The add_entry.php example was updated, it shows the use of Net_LDAP_Entry::createFresh().
$ldap->add() links unlinked entries now to the connection used for the add.
Some new additional utility functions are available in Net_LDAP_Util to assist you in handling attributes and dns.
The LDAP-Rename command now uses this functions to deal with DN escaping issues.
Please note that ldap_explode_dn_escaped() is not available from Net_LDAP_Util anymore; it got superseeded by Net_LDAP_Util::ldap_explode_dn(). - 0.7.3 (beta, 2007-06-12)
Release notes
License: LGPL License
This release introduces some example files showing you in detail how to work with Net_LDAP.
Additionally, a bug at recursive deletion of an entry is fixed and the Net_LDAP_Filter
class is slightly optimized. - 0.7.2 (beta, 2007-05-07)
Release notes
License: LGPL License
This release features some internal code movements to be more compatible to PERL::Net_LDAP.
The movements include:
* Removed UTF8 en-/decoding stuff from Net_LDAP_Utils class since this was moved to Net_LDAP class in 0.6.6
* Moved Filter encoding from Net_LDAP_Filter to Net_LDAP_Util
* Moved ldap_explode_dn_escaped() from Net_LDAP_Entry to Net_LDAP_Util
* Added perls functions from Net_LDAP::Util to our Util class, but they still need some work
Please note that ldap_explode_dn_escaped() is not available from Net_LDAP_Entry anymore.Additionally some new functionality has been introduced:
* You can now apply regular expressions directly to a entrys attributes
and don't need to fetch the attribute values manually.
* Net_LDAP_Schema can check if a attributes syntax is binaryThe following bugs have been resolved:
* Connections to LDAP servers that forbid anonymous binds are possible again
* The JPEG attribute is now properly returned as binary value instead of string
* If the array describing selected attributes in searches didn't contain consecutive keys, there was a problem sometimes
* Some PHP5 return issues - 0.7.1 (beta, 2007-02-23)
Release notes
License: LGPL License
This is not just a bugfix release of 0.7.0 but also introduces some internal optimisations:
- Fixed a connection bug whith LDAP V3 only servers
- clearer sanitizing of the host config parameter - 0.7.0 (beta, 2007-02-05)
Release notes
License: LGPL License
This long awaited release of Net_LDAP features more stability and new functionality.
The main changes are:
- Rewrite of much of the code (including some api changes!)
- LOTS of fixed bugs!
- New class for easy filter handling (Net_LDAP_Filter)
- Sorting support for searchresults (including multivalued sorting!)
- Searched Entries can now be fetched as_struct() (array)!
- Some memory optimizationsPlease note also that Net_LDAPs configuration changed slightly. Please see $_config in LDAP.php for the new parameters.
- 0.6.6 (beta, 2005-03-01)
- 0.6.5 (beta, 2004-03-10)
- 0.6.4 (beta, 2004-02-07)
- 0.6.3 (beta, 2003-11-13)
Release notes
License: LGPL License
It seems that 0.6.2 was out too fast. So this is mainly a bugfix release:
- Removed remaining Net_LDAP::UTF8Encode and Net_LDAP::UTF8Decode calls in Net_LDAP_Entry,
which stopped attributes() and get_entry() from working
- The UTF8 functions somehow got outside the Net_LDAP class ... FIXED.
- The usuage example of the last release was wrong. We decided to move UTF8 handling into Net_LDAP.
Handling should be done this way:$attr = $ldap-utf8Encode($attr);
$entry-modify($attr);
$attr = $ldap-utf8Decode( $entry-attributes() );
- This means Net_LDAP_Util is useless right now, but will be extended in the future.
- Jan did a complete overhaul of the phpdoc stuff. Everything seems to be fine now with phpDocumentor. - 0.6.2 (beta, 2003-11-11)
- 0.5 (beta, 2003-10-11)
Release notes
License: LGPL License
Jan Wagner Contributed a new RootDSE object and a Schema object and some fixes to the Net_LDAP::search() method
The new Net_ldap_entry::modify() method seems to work very nice now. - 0.4 (beta, 2003-10-01)
Release notes
License: LGPL License
Many more bugfixes. Jan Wagner fixed the shift_entry function.
Also a new Net_LDAP_Entry::modify function has been added that goes far making a simple way to modify entries. - 0.3 (beta, 2003-09-21)
Release notes
License: LGPL License
More bug squashing! Much better errorhandling in the -search() function.
Also, all errors that create a Pear_error now includes the errornumber if
appropriate (i.e. it was an ldap generated error). - 0.2 (beta, 2003-08-23)
Release notes
License: LGPL License
Fixed a lot of bugs that jumped in during the pearification process
- 0.1 (beta, 2003-08-12)
Release notes
License: LGPL License
Initial release
Bugs
| ID | Status | Type | Version | Date | Summary |
|---|---|---|---|---|---|
| #289 | Closed | Bug | 2003-11-24 | setting a value rather than comparing | |
| #290 | Closed | Bug | 2003-11-24 | ldap_rename (fix) | |
| #890 | Closed | Bug | 2004-02-26 | PEAR QA: improvement for get_class()-usage | |
| #952 | Closed | Bug | 2004-03-05 | Broken Add method in Entry class | |
| #1060 | Closed | Bug | 2004-03-23 | Net_LDAP_Search entries function has an error | |
| #1136 | Closed | Bug | 2004-04-05 | Recursive delete it not working | |
| #2297 | Closed | Bug | 2004-09-07 | truncated binary data | |
| #2391 | Closed | Req | 2004-09-24 | LDAP_OPT_REFERRALS | |
| #2860 | Closed | Bug | 2004-11-30 | Call-time pass-by-reference has been deprecated | |
| #2985 | Closed | Bug | 2004-12-17 | Recursive delete still not working properly | |
| #2986 | Closed | Bug | 2004-12-17 | missing parameter in LDAP.php | |
| #2987 | Closed | Bug | 2004-12-17 | rewritten modify function | |
| #3560 | Closed | Bug | 2005-02-23 | Missing test.php in docs | |
| #4275 | No Feedback | Bug | 2005-05-03 | Problem with stepwise updates and Schema | |
| #4453 | Closed | Bug | 2005-05-27 | static function uses $this | |
| #4483 | Closed | Bug | 2005-05-31 | Net_LDAP->getEntry() default beaviour | |
| #4589 | Closed | Bug | 2005-06-14 | Net_LDAP_Entry->delete() does not work with empty array type attributes | |
| #4751 | Closed | Bug | 2005-07-05 | Cannot Net_LDAP::connect | |
| #4839 | Closed | Req | 2005-07-15 | sort support | |
| #4975 | Closed | Bug | 2005-08-02 | Net_LDAP::connect always throws an exception | |
| #5191 | Closed | Bug | 2005-08-23 | "shift_entry" alias does not work | |
| #6685 | Closed | Req | 0.6.6 | 2006-02-03 | i need to sort the result of net_ldap::search |
| #6793 | Closed | Bug | CVS | 2006-02-16 | Problem with fetching schema? |
| #6917 | Closed | Req | 0.6.6 | 2006-02-24 | Link to source tree in main page |
| #7823 | Closed | Bug | 0.6.6 | 2006-06-06 | reBind with bad password throws fatal error |
| #8110 | Closed | Bug | 0.6.6 | 2006-07-04 | wrong behaviour of Net_LDAP_Entry::add() |
| #8215 | Bogus | Bug | CVS | 2006-07-14 | $entry->delete only deletes one single value until $entry->update() |
| #8216 | Closed | Req | CVS | 2006-07-14 | Make parameter of $entry->update() optional |
| #8286 | Closed | Bug | 0.6.6 | 2006-07-25 | warning about passing by reference |
| #8346 | Closed | Req | CVS | 2006-08-02 | Multivalued sort support |
| #8489 | Closed | Bug | CVS | 2006-08-17 | Net_LDAP_Search->shiftentry() is slow like hell |
| #8525 | Closed | Req | CVS | 2006-08-21 | Implement a &get_ldap() method to Net_LDAP_Entry |
| #8550 | Closed | Req | CVS | 2006-08-24 | Create a class for filterhandling like in PERL::Net_LDAP |
| #8555 | Closed | Bug | CVS | 2006-08-25 | Net_LDAP_Search constructor doesn't set error codes correctly |
| #8598 | Closed | Bug | CVS | 2006-08-31 | even simple searches do not work when using cvs version |
| #8648 | Closed | Req | CVS | 2006-09-07 | Make Net_LDAP->getVersion() static |
| #8654 | Closed | Bug | CVS | 2006-09-07 | Patch 8489 opens new issue with the class constructor of Entry |
| #9266 | Closed | Bug | CVS | 2006-11-08 | Adding an attribute then reading it gives no complete result |
| #9677 | Closed | Bug | 2006-12-22 | Error with hostlist using php 5.2.0 | |
| #9678 | Bogus | Bug | CVS | 2006-12-22 | Schema fetching fails with php 5.0.2 |
| #9681 | Closed | Req | CVS | 2006-12-22 | LDIF reading and writing |
| #10064 | No Feedback | Bug | 0.7.0 | 2007-02-09 | Packages does only work with anonymous bind. |
| #10134 | Closed | Bug | 0.7.0 | 2007-02-20 | anonymous bind fails when protocol version is not set |
| #10202 | Closed | Req | 0.7.1 | 2007-02-27 | preg_match() would be nice |
| #10279 | Closed | Req | 0.7.1 | 2007-03-06 | Support for JPEG syntax (1.3.6.1.4.1.1466.115.121.1.28) |
| #10365 | Closed | Bug | 0.7.1 | 2007-03-14 | Anonymous bind |
| #10559 | Closed | Bug | CVS | 2007-03-30 | Problem with LDAP->getEntry() (entry not found) |
| #10648 | Closed | Bug | 0.7.1 | 2007-04-08 | Error Notice when searching |
| #10649 | Closed | Req | 0.7.1 | 2007-04-08 | Implement PHP5 interators for search results |
| #10650 | Closed | Bug | 0.7.1 | 2007-04-08 | Package should have some example files |
| #10767 | No Feedback | Bug | 0.7.1 | 2007-04-18 | patch to fix a $ldap->modify(..) bug |
| #10974 | Closed | Bug | CVS | 2007-05-08 | Implement Net_LDAP_Util::ldap_explode_dn() |
| #10975 | Closed | Bug | CVS | 2007-05-08 | Net_LDAP_Util::escape_dn_value() |
| #10976 | Closed | Bug | CVS | 2007-05-08 | Implement Net_LDAP_Util::canonical_dn() |
| #10977 | Closed | Bug | CVS | 2007-05-08 | Net_LDAP_Util::escape_filter_value() |
| #11287 | Closed | Bug | 0.7.2 | 2007-06-11 | Recursive Delete Functions For Only One Level |
| #11306 | Closed | Bug | 0.7.3 | 2007-06-13 | Unnecessary PEAR::raiseError() in LDAP::_connect() |
| #11309 | Closed | Bug | 0.7.3 | 2007-06-13 | $ldap->modify() is not working as expected |
| #11379 | Closed | Doc | CVS | 2007-06-21 | Finish package documentation |
| #11470 | Closed | Bug | 1.0.0RC2 | 2007-06-28 | Schema loading error |
| #11471 | Wont fix | Req | 1.0.0RC2 | 2007-06-28 | please add PHP5 support for call chaining |
| #11579 | Closed | Bug | 1.0.0RC2 | 2007-07-10 | Net_LDAP->dnExists() Returning False when DN Does Exist |
| #11677 | Closed | Bug | 1.0.0RC2 | 2007-07-23 | [WARN] Call-time pass-by-reference error in tests.php |
| #12060 | Closed | Bug | 1.0.0RC3 | 2007-09-16 | incorrect handling of reverse option in Net_LDAP_Util::ldap_explode_dn |
| #12082 | Closed | Doc | 1.0.0RC4 | 2007-09-19 | Incomplete Example 50.1 |
| #12089 | Bogus | Req | 1.0.0RC4 | 2007-09-20 | make $dn arg in Net_LDAP_Entry::createFresh default to null |
| #12218 | Closed | Bug | 1.0.0RC4 | 2007-10-10 | Net_LDAP_Util::split_rdn_multival() wrong splitting |
| #12244 | Closed | Bug | CVS | 2007-10-14 | errors in unit tests |
| #12245 | Closed | Bug | CVS | 2007-10-14 | ob_start in filter tests cause pear-wide unit test suite to hang |
| #12345 | Bogus | Req | 1.0.0RC4 | 2007-10-25 | Implement Net_LDAP methods |
| #12355 | Closed | Req | 1.0.0 | 2007-10-29 | Net_LDAP_Filter unittest fails |
| #12574 | Closed | Bug | 1.0.0 | 2007-12-02 | incorrect license in package.xml |
| #12702 | Closed | Bug | 1.0.0 | 2007-12-16 | notice: escape method calls unset variable |
| #12876 | Closed | Bug | 1.0.0 | 2008-01-10 | Don't use Anonymous access ! |
| #13197 | Closed | Bug | 1.1.0a2 | 2008-02-25 | $ldap->dnExists() disturbes later delete() calls |
| #13200 | Closed | Bug | 1.1.0a2 | 2008-02-25 | Adding an entry and afterwards modifying the same object wants to readd entry |
| #13216 | Closed | Bug | 1.0.0 | 2008-02-26 | Net_LDAP->copy() looses attribute values |
| #13228 | Closed | Bug | 1.1.0a2 | 2008-02-27 | Changing entry does not update internal attributes correctly |