+2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ - The PropertyValueCollection class doesn't mark its data as dirty/changed in
+ - this[int index] setter
+ - Insert()
+ - Remove()
+ - Value setter
+ The DirectoryEntry class doesn't handle the clearing of an attribute (see
+ CommitEntry())
+ Patch from Juraj Skripsky that fixes bug #416985.
+
+2008-07-06 Sebastien Pouliot <sebastien@ximian.com>
+
+ * DirectoryEntry.cs: Use typeof(LdapModification) instead of
+ Type.GetType and actually use the value afterward.
+ [Found using Gendarme AvoidTypeGetTypeForConstantStringsRule]
+ * SearchResultCollection.cs: Avoid infinite recursion in
+ Contains(SearchResult).
+ [Found using Gendarme BadRecursiveInvocationRule]
+
+2007-05-21 Adar Wesley <adarw@mainsoft.com>
+
+ * DirectoryEntry.cs: added missing methods InvokeGet, InvokeSet.
+
+2006-12-28 Jon Larimer <jlarimer@gmail.com>
+
+ * DirectorySearcher.cs: When using
+ System.DirectoryServices.DirectorySearcher to query a Windows
+ Active Directory Server, the results will almost always contain
+ referal nodes. These can probably be ignored, as there are also
+ non-referal responses.
+
+ With the below patch, the Mono DirectorySearcher can be used to
+ query Windows AD servers.
+
+ Fixes #80103.
+
+2005-05-12 Boris Kirzner <borisk@mainsoft.com>
+ * DirectoryEntry.cs, DirectorySearcher.cs: fix object disposing.
+
+2005-06-11 Boris Kirzner <borisk@mainsoft.com>
+ * DirectoryEntry.cs: fixes for RefreshCache()
+ -Property names should be sent to server if only particular properties
+ need to be updated.
+ -Refreshing all the properties should work with separate list,
+ so the original properties values are not damaged if the refresh
+ fails for some reason.
+
+2005-30-10 Boris Kirzner <borisk@mainsoft.com>
+ * DirectoryEntries.cs: fix for null base dn.
+ * DirectorySearcher.cs: use server root authentication type for binding.
+
+2005-28-07 Boris Kirzner <borisk@mainsoft.com>
+ * DirectoryEntry.cs: pass AuthenticationType as a parameter for
+ LdapConnection.Bind.
+
+2005-06-19 Boris Kirzner <borisk@mainsoft.coim>
+ * DirectorySearcher.cs:
+ - Use ADsPath property (always represents an actual url)
+ instead of Path (may be null or empty string).
+ - Use PropertyNamesOnly property while perfoming search, so property
+ values retrieved only when needed.
+ - Create parent path in more clean way.
+ * DirectoryEntry.cs:
+ - Use ADsPath property (always represents an actual url)
+ instead of Path (may be null or empty string).
+ - InitEntry takes special care about rootDse entries.
+ - Path return empty string if assigned to null.
+ - Added ADsPath property. This is an "actual" entry path on the server.
+ If user does not specifies a path, it is resolved using rootDse
+ server entry properties. We need this since the user-specified Path
+ property should never change.
+ - Added GetProperties,SetProperties and LoadProperties methods
+ to handle internal properties load and assignment.
+ - Added DefaultHost and DefaultPort properties, so user can specify the
+ default LDAP server information using app config. If user does not
+ specify it, the localhost:389 is the default.
+ - Added InitToRootDse method - initializes current entry to specified
+ server rootDse entry.
+ - CheckEntry takes special care about rootDse entries.
+ - CommitEntry rewrited to use .NET style iteration. In addition,
+ the method uses entry peroperties whout enforsing their reload.
+ - Implemented RefreshCache methods.
+ - Added method GetLdapUrlString, returns LDAP URL string representation
+ that omits default port
+ (i.e. ldap://server/dn instead of ldap://server:389/dn),
+ as .NET does.
+ * PropertyValueCollection.cs: removed redundant MonoTodo attributes.
+ * SearchResult.cs: if underlined result properties collection is empty,
+ do not try to load a properties from it.
+
+2005-06-14 Boris Kirzner <borisk@mainsoft.com>
+ * DirectorySearcher.cs : AdsPath property should not appear in the query, but it still should appear in the SearchResult properties (by initialization from result entry path).
+
+2005-03-31 Boris Kirzner <borisk@mainsoft.com>
+ * DirectoryEntry.cs :
+ - Implemented UsePropertyCache.
+ - Refresh entry after Rename and MoveTo.
+ - CommitChanges : do not send request to server if no properties changed. Drop new flag after committing newly created entry.
+ - Disconnect only if connected in Close(). Clean up Dispose().
+ - Removed unnecessary console output.
+ * PropertyCollection.cs : Hold reference to parent DirectoryEntry.
+ * PropertyValueCollection.cs : Hold reference to parent DirectoryEntry. Call parent's CommitDeferred on collection changes.
+
+2005-03-31 Boris Kirzner <borisk@mainsoft.com>
+
+ * DirectorySearcher.cs :
+ - Use common TimeSpan object to initialize properties default values.
+ - DoSearch uses SizeLimit and ServerTimeLimit. Do not throw if sie limit or time limit occurs on the server.
+ - Construct ADsPath property from resulting entry path.
+ - Implemented Dispose method.
+
+2005-03-28 Boris Kirzner <borisk@mainsoft.com>
+
+ * DirectoryEntries.cs :
+ - Removed unnecessary console output.
+ * SearchResult.cs :
+ - Initialize Path property in constructor.
+ - Removed unnecessary console output.
+
+2005-03-22 Boris Kirzner <borisk@mainsoft.com>
+
+ * DirectorySearcher.cs :
+ - ClientTimeout and ServerPageTimeLimit initialized to 1 second.
+ - SizeLimit initialized to 0.
+ - Setting SizeLimit to negative value throws an exception.
+ - Added private variable for ServerTime Limit.
+ - Avoid infinite loop in CacheResults.
+ - Removed emptycol, search result lazy evaluated intead of this.
+ - If the search did not return results, FindOne() should returns null.
+ - ADsPath property always loaded, or created from DN.
+
+2005-03-22 Boris Kirzner <borisk@mainsoft.com>
+
+ * DirectoryEntries.cs : When adding new entry, do not set "objectclass"
+ property to include schemaClassName value.
+
+2005-03-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * DirectoryEntry.cs: username and password are now initialized to null.
+ Patch by Boris Kirzner (Mainsoft).
+
+2005-03-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * PropertyValueCollection.cs: the Value property for an empty collection
+ is now null and setting Value to null clears the collection. Patch by
+ Boris Kirzner (Mainsoft).
+
+2005-01-26 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DirectoryEntry.cs, DirectoryEntries.cs :
+ eliminate "throw new Exception".
+
+2004-09-10 Sebastien Pouliot <sebastien@ximian.com>
+
+ * DirectoryServicesPermission.cs: Completed TODO.
+ * DirectoryServicesPermissionAttribute.cs: Added path validation and
+ enable the creation of unrestricted permissions.
+ * DirectoryServicesPermissionEntry.cs: Add internal method to return
+ an ResourcePermissionBaseEntry instance.
+ * DirectoryServicesPermissionEntryCollection.cs: Allow synchronization
+ of elements with the base permission class (required to enable Copy).
+
2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
* DirectoryServicesPermission.cs: renamed field to match MS.NET