--- /dev/null
+//
+// AssemblyInfo.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+// Marek Safar <marek.safar@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Reflection;
+using System.Resources;
+using System.Security;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about the System.DirectoryServices.Protocols assembly
+// v3.5 Assembly
+
+[assembly: AssemblyTitle ("System.DirectoryServices.Protocols.dll")]
+[assembly: AssemblyDescription ("System.DirectoryServices.Protocols.dll")]
+[assembly: AssemblyDefaultAlias ("System.DirectoryServices.Protocols.dll")]
+
+[assembly: AssemblyCompany (Consts.MonoCompany)]
+[assembly: AssemblyProduct (Consts.MonoProduct)]
+[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyVersion (Consts.FxVersion)]
+[assembly: SatelliteContractVersion (Consts.FxVersion)]
+[assembly: AssemblyInformationalVersion (Consts.FxFileVersion)]
+[assembly: AssemblyFileVersion (Consts.FxFileVersion)]
+
+[assembly: NeutralResourcesLanguage ("en-US")]
+[assembly: CLSCompliant (true)]
+[assembly: AssemblyDelaySign (true)]
+[assembly: AssemblyKeyFile ("../ecma.pub")]
+
+[assembly: ComVisible (false)]
+[assembly: AllowPartiallyTrustedCallers]
+
--- /dev/null
+2009-01-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * AssemblyInfo.cs : initial checkin.
--- /dev/null
+2009-01-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * Makefile, System.DirectoryServices.Protocols.dll.sources :
+ initial checkin.
--- /dev/null
+thisdir = class/System.DirectoryServices.Protocols
+SUBDIRS =
+include ../../build/rules.make
+
+LIBRARY = System.DirectoryServices.Protocols.dll
+LIB_MCS_FLAGS = \
+ /r:System.dll \
+ /r:System.DirectoryServices.dll \
+ /r:System.Xml.dll \
+
+NO_TEST = yes
+
+ifeq (2.0, $(FRAMEWORK_VERSION))
+# This is a .NET 3.5 only assembly, but built during the 2.0 build
+LIB_MCS_FLAGS += -d:NET_3_5
+endif
+
+include ../../build/library.make
--- /dev/null
+../../build/common/Consts.cs
+../../build/common/Locale.cs
+../../build/common/MonoTODOAttribute.cs
+Assembly/AssemblyInfo.cs
+System.DirectoryServices.Protocols/AddRequest.cs
+System.DirectoryServices.Protocols/AddResponse.cs
+System.DirectoryServices.Protocols/AsqRequestControl.cs
+System.DirectoryServices.Protocols/AsqResponseControl.cs
+System.DirectoryServices.Protocols/AuthType.cs
+System.DirectoryServices.Protocols/BerConversionException.cs
+System.DirectoryServices.Protocols/BerConverter.cs
+System.DirectoryServices.Protocols/CompareRequest.cs
+System.DirectoryServices.Protocols/CompareResponse.cs
+System.DirectoryServices.Protocols/CrossDomainMoveControl.cs
+System.DirectoryServices.Protocols/DeleteRequest.cs
+System.DirectoryServices.Protocols/DeleteResponse.cs
+System.DirectoryServices.Protocols/DereferenceAlias.cs
+System.DirectoryServices.Protocols/DereferenceConnectionCallback.cs
+System.DirectoryServices.Protocols/DirSyncRequestControl.cs
+System.DirectoryServices.Protocols/DirSyncResponseControl.cs
+System.DirectoryServices.Protocols/DirectoryAttribute.cs
+System.DirectoryServices.Protocols/DirectoryAttributeCollection.cs
+System.DirectoryServices.Protocols/DirectoryAttributeModification.cs
+System.DirectoryServices.Protocols/DirectoryAttributeModificationCollection.cs
+System.DirectoryServices.Protocols/DirectoryAttributeOperation.cs
+System.DirectoryServices.Protocols/DirectoryConnection.cs
+System.DirectoryServices.Protocols/DirectoryControl.cs
+System.DirectoryServices.Protocols/DirectoryControlCollection.cs
+System.DirectoryServices.Protocols/DirectoryException.cs
+System.DirectoryServices.Protocols/DirectoryIdentifier.cs
+System.DirectoryServices.Protocols/DirectoryNotificationControl.cs
+System.DirectoryServices.Protocols/DirectoryOperation.cs
+System.DirectoryServices.Protocols/DirectoryOperationException.cs
+System.DirectoryServices.Protocols/DirectoryRequest.cs
+System.DirectoryServices.Protocols/DirectoryResponse.cs
+System.DirectoryServices.Protocols/DirectorySynchronizationOptions.cs
+System.DirectoryServices.Protocols/DomainScopeControl.cs
+System.DirectoryServices.Protocols/DsmlAuthRequest.cs
+System.DirectoryServices.Protocols/DsmlAuthResponse.cs
+System.DirectoryServices.Protocols/DsmlDirectoryIdentifier.cs
+System.DirectoryServices.Protocols/DsmlDocument.cs
+System.DirectoryServices.Protocols/DsmlDocumentProcessing.cs
+System.DirectoryServices.Protocols/DsmlErrorProcessing.cs
+System.DirectoryServices.Protocols/DsmlErrorResponse.cs
+System.DirectoryServices.Protocols/DsmlInvalidDocumentException.cs
+System.DirectoryServices.Protocols/DsmlRequestDocument.cs
+System.DirectoryServices.Protocols/DsmlResponseDocument.cs
+System.DirectoryServices.Protocols/DsmlResponseOrder.cs
+System.DirectoryServices.Protocols/DsmlSoapConnection.cs
+System.DirectoryServices.Protocols/DsmlSoapHttpConnection.cs
+System.DirectoryServices.Protocols/ErrorResponseCategory.cs
+System.DirectoryServices.Protocols/ErrorResponseException.cs
+System.DirectoryServices.Protocols/ExtendedDNControl.cs
+System.DirectoryServices.Protocols/ExtendedDNFlag.cs
+System.DirectoryServices.Protocols/ExtendedRequest.cs
+System.DirectoryServices.Protocols/ExtendedResponse.cs
+System.DirectoryServices.Protocols/LazyCommitControl.cs
+System.DirectoryServices.Protocols/LdapConnection.cs
+System.DirectoryServices.Protocols/LdapDirectoryIdentifier.cs
+System.DirectoryServices.Protocols/LdapException.cs
+System.DirectoryServices.Protocols/LdapSessionOptions.cs
+System.DirectoryServices.Protocols/LocatorFlags.cs
+System.DirectoryServices.Protocols/ModifyDNRequest.cs
+System.DirectoryServices.Protocols/ModifyDNResponse.cs
+System.DirectoryServices.Protocols/ModifyRequest.cs
+System.DirectoryServices.Protocols/ModifyResponse.cs
+System.DirectoryServices.Protocols/NotifyOfNewConnectionCallback.cs
+System.DirectoryServices.Protocols/PageResultRequestControl.cs
+System.DirectoryServices.Protocols/PageResultResponseControl.cs
+System.DirectoryServices.Protocols/PartialResultProcessing.cs
+System.DirectoryServices.Protocols/PartialResultsCollection.cs
+System.DirectoryServices.Protocols/PermissiveModifyControl.cs
+System.DirectoryServices.Protocols/QueryClientCertificateCallback.cs
+System.DirectoryServices.Protocols/QueryForConnectionCallback.cs
+System.DirectoryServices.Protocols/QuotaControl.cs
+System.DirectoryServices.Protocols/ReferralCallback.cs
+System.DirectoryServices.Protocols/ReferralChasingOptions.cs
+System.DirectoryServices.Protocols/ResultCode.cs
+System.DirectoryServices.Protocols/SearchOption.cs
+System.DirectoryServices.Protocols/SearchOptionsControl.cs
+System.DirectoryServices.Protocols/SearchRequest.cs
+System.DirectoryServices.Protocols/SearchResponse.cs
+System.DirectoryServices.Protocols/SearchResultAttributeCollection.cs
+System.DirectoryServices.Protocols/SearchResultEntry.cs
+System.DirectoryServices.Protocols/SearchResultEntryCollection.cs
+System.DirectoryServices.Protocols/SearchResultReference.cs
+System.DirectoryServices.Protocols/SearchResultReferenceCollection.cs
+System.DirectoryServices.Protocols/SearchScope.cs
+System.DirectoryServices.Protocols/SecurityDescriptorFlagControl.cs
+System.DirectoryServices.Protocols/SecurityMasks.cs
+System.DirectoryServices.Protocols/SecurityPackageContextConnectionInformation.cs
+System.DirectoryServices.Protocols/SecurityProtocol.cs
+System.DirectoryServices.Protocols/ShowDeletedControl.cs
+System.DirectoryServices.Protocols/SortKey.cs
+System.DirectoryServices.Protocols/SortRequestControl.cs
+System.DirectoryServices.Protocols/SortResponseControl.cs
+System.DirectoryServices.Protocols/TlsOperationException.cs
+System.DirectoryServices.Protocols/TreeDeleteControl.cs
+System.DirectoryServices.Protocols/VerifyNameControl.cs
+System.DirectoryServices.Protocols/VerifyServerCertificateCallback.cs
+System.DirectoryServices.Protocols/VlvRequestControl.cs
+System.DirectoryServices.Protocols/VlvResponseControl.cs
--- /dev/null
+//
+// AddRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class AddRequest : DirectoryRequest
+ {
+ public AddRequest ()
+ {
+ }
+
+ public AddRequest (string distinguishedName, params DirectoryAttribute [] attributes)
+ {
+ DistinguishedName = distinguishedName;
+ Attributes = new DirectoryAttributeCollection (attributes);
+ }
+
+ public AddRequest (string distinguishedName, string objectClass)
+ {
+ DistinguishedName = distinguishedName;
+ Attributes = new DirectoryAttributeCollection (new DirectoryAttribute [0]);
+
+ throw new NotImplementedException ();
+ }
+
+ public DirectoryAttributeCollection Attributes { get; private set; }
+ public string DistinguishedName { get; set; }
+
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// AddResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class AddResponse : DirectoryResponse
+ {
+ }
+}
--- /dev/null
+//
+// AsqRequestControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class AsqRequestControl : DirectoryControl
+ {
+ public AsqRequestControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public AsqRequestControl (string attributeName)
+ : this ()
+ {
+ AttributeName = attributeName;
+ }
+
+ public string AttributeName { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// AsqResponseControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class AsqResponseControl : DirectoryControl
+ {
+ internal AsqResponseControl (ResultCode result)
+ : base (null, null, false, false)
+ {
+ Result = result;
+ throw new NotImplementedException ();
+ }
+
+ public ResultCode Result { get; private set; }
+ }
+}
--- /dev/null
+//
+// AuthType.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum AuthType
+ {
+ Anonymous,
+ Basic,
+ Negotiate,
+ Ntlm,
+ Digest,
+ Sicily,
+ Dpa,
+ Msn,
+ External,
+ Kerberos
+ }
+}
--- /dev/null
+//
+// BerConversionException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ public class BerConversionException : DirectoryException
+ {
+ public BerConversionException ()
+ : this ("BER conversion error")
+ {
+ }
+
+ public BerConversionException (string message)
+ : base (message)
+ {
+ }
+ public BerConversionException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ protected BerConversionException (SerializationInfo info, StreamingContext context)
+ : base (info, context)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// BerConverter.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public sealed class BerConverter
+ {
+ [MonoTODO]
+ public static object [] Decode (string format, byte [] value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public static byte [] Encode (string format, params object [] value)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+2009-01-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * initial checkin. Stubs and some implemented code for all 2.0 types.
+ I'm not going to implement this assembly, it's just for stub to
+ make it possible to build some applications that depend on this
+ assembly. Feel free to implement it.
--- /dev/null
+//
+// CompareRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class CompareRequest : DirectoryRequest
+ {
+ public CompareRequest ()
+ {
+ }
+
+ public CompareRequest (string distinguishedName, DirectoryAttribute assertion)
+ {
+ DistinguishedName = distinguishedName;
+ Assertion = assertion;
+ }
+
+ public CompareRequest (string distinguishedName, string attributeName, byte [] value)
+ : this (distinguishedName, new DirectoryAttribute (attributeName, value))
+ {
+ throw new NotImplementedException ();
+ }
+
+ public CompareRequest (string distinguishedName, string attributeName, string value)
+ : this (distinguishedName, new DirectoryAttribute (attributeName, value))
+ {
+ throw new NotImplementedException ();
+ }
+
+ public CompareRequest (string distinguishedName, string attributeName, Uri value)
+ : this (distinguishedName, new DirectoryAttribute (attributeName, value))
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DirectoryAttribute Assertion { get; private set; }
+ public string DistinguishedName { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// CompareResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class CompareResponse : DirectoryResponse
+ {
+ internal CompareResponse ()
+ {
+ }
+ }
+}
--- /dev/null
+//
+// CrossDomainMoveControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class CrossDomainMoveControl : DirectoryControl
+ {
+ public CrossDomainMoveControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public CrossDomainMoveControl (string targetDomainController)
+ : this ()
+ {
+ TargetDomainController = targetDomainController;
+ }
+
+ public string TargetDomainController { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DeleteRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DeleteRequest : DirectoryRequest
+ {
+ public DeleteRequest ()
+ {
+ }
+
+ public DeleteRequest (string distinguishedName)
+ {
+ DistinguishedName = distinguishedName;
+ }
+
+ public string DistinguishedName { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DeleteResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DeleteResponse : DirectoryResponse
+ {
+ internal DeleteResponse ()
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DereferenceAlias.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum DereferenceAlias
+ {
+ Never,
+ InSearching,
+ FindingBaseObject,
+ Always
+ }
+}
--- /dev/null
+//
+// DereferenceConnectionCallback.cs
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public delegate void DereferenceConnectionCallback (LdapConnection primaryConnection, LdapConnection connectionToDereference);
+}
--- /dev/null
+//
+// DirSyncRequestControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DirSyncRequestControl : DirectoryControl
+ {
+ public DirSyncRequestControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public DirSyncRequestControl (byte [] cookie)
+ : this ()
+ {
+ Cookie = cookie;
+ }
+
+ public DirSyncRequestControl (byte [] cookie, DirectorySynchronizationOptions option)
+ : this (cookie)
+ {
+ Option = option;
+ }
+
+ public DirSyncRequestControl (byte [] cookie, DirectorySynchronizationOptions option, int attributeCount)
+ : this (cookie, option)
+ {
+ AttributeCount = attributeCount;
+ }
+
+ public int AttributeCount { get; set; }
+ public byte [] Cookie { get; set; }
+ public DirectorySynchronizationOptions Option { get; set; }
+
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DirSyncResponseControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DirSyncResponseControl : DirectoryControl
+ {
+ internal DirSyncResponseControl (byte [] cookie, bool moreData, int resultSize)
+ : base (null, null, false, false)
+ {
+ Cookie = cookie;
+ MoreData = moreData;
+ ResultSize = resultSize;
+ }
+
+ public byte [] Cookie { get; private set; }
+ public bool MoreData { get; private set; }
+ public int ResultSize { get; private set; }
+ }
+}
--- /dev/null
+//
+// DirectoryAttribute.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DirectoryAttribute : CollectionBase
+ {
+ public DirectoryAttribute ()
+ {
+ }
+
+ public DirectoryAttribute (string name, byte [] value)
+ {
+ Name = name;
+ Add (value);
+ }
+
+ public DirectoryAttribute (string name, params object [] values)
+ {
+ Name = name;
+ AddRange (values);
+ }
+
+ public DirectoryAttribute (string name, string value)
+ {
+ Name = name;
+ Add (value);
+ }
+
+ public DirectoryAttribute (string name, Uri value)
+ {
+ Name = name;
+ Add (value);
+ }
+
+ public object this [int index] {
+ get { return List [index]; }
+ set { List [index] = value; }
+ }
+
+ public string Name { get; set; }
+
+ [MonoTODO]
+ public int Add (byte [] value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public int Add (string value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public int Add (Uri value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void AddRange (object [] values)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public bool Contains (object value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void CopyTo (object [] array, int index)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public object [] GetValues (Type valuesType)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public int IndexOf (object value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void Insert (int index, byte [] value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void Insert (int index, string value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void Insert (int index, Uri value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ protected override void OnValidate (object value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void Remove (object value)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryAttributeCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DirectoryAttributeCollection : CollectionBase
+ {
+ internal DirectoryAttributeCollection (DirectoryAttribute [] attributes)
+ {
+ list = new ArrayList (attributes);
+ }
+
+ ArrayList list;
+
+ public DirectoryAttribute this [int index] {
+ get { return (DirectoryAttribute) list [index]; }
+ set { list [index] = value; }
+ }
+
+ public int Add (DirectoryAttribute attribute)
+ {
+ return list.Add (attribute);
+ }
+
+ public void AddRange (DirectoryAttribute [] attributes)
+ {
+ list.AddRange (attributes);
+ }
+
+ public void AddRange (DirectoryAttributeCollection attributeCollection)
+ {
+ list.Add (attributeCollection.list);
+ }
+
+ public bool Contains (DirectoryAttribute value)
+ {
+ return list.Contains (value);
+ }
+
+ public void CopyTo (DirectoryAttribute [] array, int index)
+ {
+ list.CopyTo (array, index);
+ }
+
+ public int IndexOf (DirectoryAttribute value)
+ {
+ return list.IndexOf (value);
+ }
+
+ public void Insert (int index, DirectoryAttribute value)
+ {
+ list.Insert (index, value);
+ }
+
+ [MonoTODO ("verify")]
+ protected override void OnValidate (object value)
+ {
+ if (!(value is DirectoryAttribute))
+ throw new ArgumentException ("value must be a DirectoryAttribute");
+ }
+
+ public void Remove (DirectoryAttribute value)
+ {
+ list.Remove (value);
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryAttributeModification.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DirectoryAttributeModification : DirectoryAttribute
+ {
+ public DirectoryAttributeModification ()
+ {
+ }
+
+ public DirectoryAttributeOperation Operation { get; set; }
+
+ }
+}
--- /dev/null
+//
+// DirectoryAttributeModificationCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DirectoryAttributeModificationCollection : CollectionBase
+ {
+ public DirectoryAttributeModificationCollection ()
+ {
+ }
+
+ public DirectoryAttributeModification this [int index] {
+ get { return (DirectoryAttributeModification) List [index]; }
+ set { List [index] = value; }
+ }
+
+ public int Add (DirectoryAttributeModification attribute)
+ {
+ return List.Add (attribute);
+ }
+
+ public void AddRange (DirectoryAttributeModification [] attributes)
+ {
+ foreach (var a in attributes)
+ List.Add (a);
+ }
+
+ public void AddRange (DirectoryAttributeModificationCollection attributeCollection)
+ {
+ foreach (var a in attributeCollection)
+ List.Add (a);
+ }
+
+ public bool Contains (DirectoryAttributeModification value)
+ {
+ return List.Contains (value);
+ }
+
+ public void CopyTo (DirectoryAttributeModification [] array, int index)
+ {
+ List.CopyTo (array, index);
+ }
+
+ public int IndexOf (DirectoryAttributeModification value)
+ {
+ return List.IndexOf (value);
+ }
+
+ public void Insert (int index, DirectoryAttributeModification value)
+ {
+ List.Insert (index, value);
+ }
+
+ [MonoTODO ("verify")]
+ protected override void OnValidate (object value)
+ {
+ if (!(value is DirectoryAttributeModification))
+ throw new ArgumentException ("value must be a DirectoryAttributeModification");
+ }
+
+ public void Remove (DirectoryAttributeModification value)
+ {
+ List.Remove (value);
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryAttributeModificationCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum DirectoryAttributeOperation
+ {
+ Add,
+ Delete,
+ Replace
+ }
+}
--- /dev/null
+//
+// DirectoryConnection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.DirectoryServices;
+using System.Net;
+using System.Security.Cryptography.X509Certificates;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ public abstract class DirectoryConnection
+ {
+ protected DirectoryConnection ()
+ {
+ }
+
+ [MonoTODO]
+ public X509CertificateCollection ClientCertificates {
+ get { throw new NotImplementedException (); }
+ }
+
+ [MonoTODO]
+ public virtual NetworkCredential Credential {
+ set { throw new NotImplementedException (); }
+ }
+
+ [MonoTODO]
+ public virtual DirectoryIdentifier Directory {
+ get { throw new NotImplementedException (); }
+ }
+
+ [MonoTODO]
+ public virtual TimeSpan Timeout { get; set; }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public abstract DirectoryResponse SendRequest (DirectoryRequest request);
+ }
+}
--- /dev/null
+//
+// DirectoryControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DirectoryControl
+ {
+ public DirectoryControl (string type, byte [] value, bool isCritical, bool serverSide)
+ {
+ Type = type;
+ IsCritical = isCritical;
+ ServerSide = serverSide;
+
+ // value
+ throw new NotImplementedException ();
+ }
+
+ public bool IsCritical { get; set; }
+ public bool ServerSide { get; set; }
+ public string Type { get; private set; }
+
+ [MonoTODO]
+ public virtual byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryControlCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DirectoryControlCollection : CollectionBase
+ {
+ public DirectoryControlCollection ()
+ {
+ }
+
+ public DirectoryControl this [int index] {
+ get { return (DirectoryControl) List [index]; }
+ set { List [index] = value; }
+ }
+
+ public int Add (DirectoryControl control)
+ {
+ return List.Add (control);
+ }
+
+ public void AddRange (DirectoryControl [] controls)
+ {
+ foreach (var c in controls)
+ List.Add (c);
+ }
+
+ public void AddRange (DirectoryControlCollection controlCollection)
+ {
+ foreach (var c in controlCollection)
+ List.Add (c);
+ }
+
+ public bool Contains (DirectoryControl value)
+ {
+ return List.Contains (value);
+ }
+
+ public void CopyTo (DirectoryControl [] array, int index)
+ {
+ List.CopyTo (array, index);
+ }
+
+ public int IndexOf (DirectoryControl value)
+ {
+ return List.IndexOf (value);
+ }
+
+ public void Insert (int index, DirectoryControl value)
+ {
+ List.Insert (index, value);
+ }
+
+ [MonoTODO ("verify")]
+ protected override void OnValidate (object value)
+ {
+ if (!(value is DirectoryControl))
+ throw new ArgumentException ("value must be a DirectoryControl");
+ }
+
+ public void Remove (DirectoryControl value)
+ {
+ List.Remove (value);
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+
+namespace System.DirectoryServices.Protocols
+{
+ [SerializableAttribute]
+ public class DirectoryException : Exception
+ {
+ public DirectoryException ()
+ : this ("directory exception")
+ {
+ }
+
+ public DirectoryException (string message)
+ : base (message)
+ {
+ }
+
+ public DirectoryException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ protected DirectoryException (SerializationInfo info, StreamingContext context)
+ : base (info, context)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryIdentifier.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public abstract class DirectoryIdentifier
+ {
+ }
+}
--- /dev/null
+//
+// DirectoryNotificationControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DirectoryNotificationControl : DirectoryControl
+ {
+ internal DirectoryNotificationControl ()
+ : base (null, null, false, false)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryOperation.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public abstract class DirectoryOperation
+ {
+ }
+}
--- /dev/null
+//
+// DirectoryOperationException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ [MonoTODO]
+ public class DirectoryOperationException : DirectoryException, ISerializable
+ {
+ public DirectoryOperationException ()
+ : this ("directory operation error")
+ {
+ }
+
+ public DirectoryOperationException (string message)
+ : base (message)
+ {
+ }
+
+ public DirectoryOperationException (DirectoryResponse response, string message)
+ : this (message)
+ {
+ }
+
+ public DirectoryOperationException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ public DirectoryOperationException (DirectoryResponse response, string message, Exception inner)
+ : this (message, inner)
+ {
+ Response = response;
+ }
+
+ public DirectoryOperationException (DirectoryResponse response)
+ : this ()
+ {
+ }
+
+ protected DirectoryOperationException (SerializationInfo info, StreamingContext context)
+ : base (info, context)
+ {
+ Response = (DirectoryResponse) info.GetValue ("Response", typeof (DirectoryResponse));
+ }
+
+ public DirectoryResponse Response { get; private set; }
+
+ [SecurityPermission (SecurityAction.Demand, SerializationFormatter = true)]
+ public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
+ {
+ base.GetObjectData (serializationInfo, streamingContext);
+ serializationInfo.AddValue ("Response", Response, typeof (DirectoryResponse));
+ }
+ }
+}
--- /dev/null
+//
+// DirectoryRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public abstract class DirectoryRequest : DirectoryOperation
+ {
+ internal DirectoryRequest ()
+ {
+ Controls = new DirectoryControlCollection ();
+ }
+
+ public DirectoryControlCollection Controls { get; private set; }
+ public string RequestId { get; set; }
+
+ protected abstract XmlElement ToXmlNode (XmlDocument doc);
+ }
+}
--- /dev/null
+//
+// DirectoryResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public abstract class DirectoryResponse : DirectoryOperation
+ {
+ internal DirectoryResponse ()
+ {
+ }
+
+ public virtual DirectoryControl [] Controls {
+ get { throw new NotImplementedException (); }
+ }
+ public virtual string ErrorMessage {
+ get { throw new NotImplementedException (); }
+ }
+ public virtual string MatchedDN {
+ get { throw new NotImplementedException (); }
+ }
+ public virtual Uri [] Referral {
+ get { throw new NotImplementedException (); }
+ }
+ public string RequestId {
+ get { throw new NotImplementedException (); }
+ }
+ public virtual ResultCode ResultCode {
+ get { throw new NotImplementedException (); }
+ }
+ }
+}
--- /dev/null
+//
+// DirectorySynchronizationOptions.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Flags]
+ public enum DirectorySynchronizationOptions
+ {
+ None = 0,
+ ObjectSecurity,
+ ParentsFirst = 2,
+ PublicDataOnly = 4,
+ IncrementalValues = 8,
+ }
+}
--- /dev/null
+//
+// DomainScopeControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DomainScopeControl : DirectoryControl
+ {
+ public DomainScopeControl ()
+ : base (null, null, false, false)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DsmlAuthRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DsmlAuthRequest : DirectoryRequest
+ {
+ public DsmlAuthRequest ()
+ {
+ }
+
+ public DsmlAuthRequest (string principal)
+ {
+ Principal = principal;
+ }
+
+ public string Principal { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// DsmlAuthResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DsmlAuthResponse : DirectoryResponse
+ {
+ internal DsmlAuthResponse ()
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DsmlDirectoryIdentifier.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DsmlDirectoryIdentifier : DirectoryIdentifier
+ {
+ public DsmlDirectoryIdentifier (Uri serverUri)
+ {
+ this.ServerUri = serverUri;
+ }
+
+ public Uri ServerUri { get; private set; }
+ }
+}
--- /dev/null
+//
+// DsmlDocument.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public abstract class DsmlDocument
+ {
+ public abstract XmlDocument ToXml ();
+ }
+}
--- /dev/null
+//
+// DsmlDocumentProcessing.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum DsmlDocumentProcessing
+ {
+ Sequential,
+ Parallel
+ }
+}
--- /dev/null
+//
+// DsmlErrorProcessing.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum DsmlErrorProcessing
+ {
+ Resume,
+ Exit
+ }
+}
--- /dev/null
+//
+// DsmlErrorResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DsmlErrorResponse : DirectoryResponse
+ {
+ public override DirectoryControl [] Controls {
+ get { throw new NotImplementedException (); }
+ }
+ public string Detail {
+ get { throw new NotImplementedException (); }
+ }
+ public override string ErrorMessage {
+ get { throw new NotImplementedException (); }
+ }
+ public override string MatchedDN {
+ get { throw new NotImplementedException (); }
+ }
+ public string Message {
+ get { throw new NotImplementedException (); }
+ }
+ public override Uri [] Referral {
+ get { throw new NotImplementedException (); }
+ }
+ public override ResultCode ResultCode {
+ get { throw new NotImplementedException (); }
+ }
+ public ErrorResponseCategory Type {
+ get { throw new NotImplementedException (); }
+ }
+ }
+}
--- /dev/null
+//
+// DsmlInvalidDocumentException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ public class DsmlInvalidDocumentException : DirectoryException
+ {
+ public DsmlInvalidDocumentException()
+ : this ("invalid DSML document error")
+ {
+ }
+
+ public DsmlInvalidDocumentException (string message)
+ : base (message)
+ {
+ }
+
+ public DsmlInvalidDocumentException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ protected DsmlInvalidDocumentException (SerializationInfo info, StreamingContext context)
+ : base (info, context)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// DsmlRequestDocument.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DsmlRequestDocument : DsmlDocument, IList, ICollection, IEnumerable
+ {
+ IList list = new ArrayList ();
+
+ internal DsmlRequestDocument ()
+ {
+ }
+
+ public DsmlDocumentProcessing DocumentProcessing { get; set; }
+ public DsmlErrorProcessing ErrorProcessing { get; set; }
+
+ public override XmlDocument ToXml ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ public int Count {
+ get { return list.Count; }
+ }
+
+ protected bool IsFixedSize {
+ get { return list.IsFixedSize; }
+ }
+
+ protected bool IsReadOnly {
+ get { return list.IsReadOnly; }
+ }
+
+ protected bool IsSynchronized {
+ get { return list.IsSynchronized; }
+ }
+
+ public DirectoryRequest this [int index] {
+ get { return (DirectoryRequest) list [index]; }
+ set { list [index] = value; }
+ }
+
+ public string RequestId { get; set; }
+
+ public DsmlResponseOrder ResponseOrder { get; set; }
+
+ protected object SyncRoot {
+ get { return list.SyncRoot; }
+ }
+
+ int ICollection.Count {
+ get { return Count; }
+ }
+
+ bool ICollection.IsSynchronized {
+ get { return IsSynchronized; }
+ }
+
+ object ICollection.SyncRoot {
+ get { return SyncRoot; }
+ }
+
+ bool IList.IsFixedSize {
+ get { return IsFixedSize; }
+ }
+
+ bool IList.IsReadOnly {
+ get { return IsReadOnly; }
+ }
+
+ object IList.this [int index] {
+ get { return this [index]; }
+ set { this [index] = (DirectoryRequest) value; }
+ }
+
+ public int Add (DirectoryRequest request)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void Clear ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ public bool Contains (DirectoryRequest value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void CopyTo (DirectoryRequest [] value, int i)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public IEnumerator GetEnumerator ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ public int IndexOf (DirectoryRequest value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void Insert (int index, DirectoryRequest value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void Remove (DirectoryRequest value)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void RemoveAt (int index)
+ {
+ throw new NotImplementedException ();
+ }
+
+ void ICollection.CopyTo (Array value, int i)
+ {
+ CopyTo ((DirectoryRequest []) value, i);
+ }
+
+ int IList.Add (object request)
+ {
+ return Add ((DirectoryRequest) request);
+ }
+
+ void IList.Clear ()
+ {
+ Clear ();
+ }
+
+ bool IList.Contains (object value)
+ {
+ return Contains ((DirectoryRequest) value);
+ }
+
+ int IList.IndexOf (object value)
+ {
+ return IndexOf ((DirectoryRequest) value);
+ }
+
+ void IList.Insert (int index, object value)
+ {
+ Insert (index, (DirectoryRequest) value);
+ }
+
+ void IList.Remove (object value)
+ {
+ Remove ((DirectoryRequest) value);
+ }
+
+ void IList.RemoveAt (int index)
+ {
+ RemoveAt (index);
+ }
+ }
+}
--- /dev/null
+//
+// DsmlResponseDocument.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class DsmlResponseDocument : DsmlDocument, ICollection, IEnumerable
+ {
+ ArrayList list = new ArrayList ();
+
+ public DsmlDocumentProcessing DocumentProcessing { get; set; }
+ public DsmlErrorProcessing ErrorProcessing { get; set; }
+
+ [MonoTODO]
+ public override XmlDocument ToXml ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public bool IsErrorResponse { get; private set; }
+ [MonoTODO]
+ public bool IsOperationError { get; private set; }
+ [MonoTODO]
+ public string RequestId { get; private set; }
+
+ public int Count {
+ get { return list.Count; }
+ }
+
+ protected bool IsFixedSize {
+ get { return list.IsFixedSize; }
+ }
+
+ protected bool IsReadOnly {
+ get { return list.IsReadOnly; }
+ }
+
+ protected bool IsSynchronized {
+ get { return list.IsSynchronized; }
+ }
+
+ public DirectoryResponse this [int index] {
+ get { return (DirectoryResponse) list [index]; }
+ set { list [index] = value; }
+ }
+
+ public string ResponseId { get; set; }
+
+ public DsmlResponseOrder ResponseOrder { get; set; }
+
+ protected object SyncRoot {
+ get { return list.SyncRoot; }
+ }
+
+ int ICollection.Count {
+ get { return Count; }
+ }
+
+ bool ICollection.IsSynchronized {
+ get { return IsSynchronized; }
+ }
+
+ object ICollection.SyncRoot {
+ get { return SyncRoot; }
+ }
+
+ public int Add (DirectoryResponse request)
+ {
+ return list.Add (request);
+ }
+
+ public void Clear ()
+ {
+ list.Clear ();
+ }
+
+ public bool Contains (DirectoryResponse value)
+ {
+ return list.Contains (value);
+ }
+
+ public void CopyTo (DirectoryResponse [] value, int i)
+ {
+ list.CopyTo (value, i);
+ }
+
+ public IEnumerator GetEnumerator ()
+ {
+ return list.GetEnumerator ();
+ }
+
+ public int IndexOf (DirectoryResponse value)
+ {
+ return list.IndexOf (value);
+ }
+
+ public void Insert (int index, DirectoryResponse value)
+ {
+ list.Insert (index, value);
+ }
+
+ public void Remove (DirectoryResponse value)
+ {
+ list.Remove (value);
+ }
+
+ public void RemoveAt (int index)
+ {
+ list.RemoveAt (index);
+ }
+
+ void ICollection.CopyTo (Array value, int i)
+ {
+ CopyTo ((DirectoryResponse []) value, i);
+ }
+ }
+}
--- /dev/null
+//
+// DsmlResponseOrder.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum DsmlResponseOrder
+ {
+ Sequential,
+ Unordered
+ }
+}
--- /dev/null
+//
+// DsmlResponseOrder.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.DirectoryServices;
+using System.Xml;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ public abstract class DsmlSoapConnection : DirectoryConnection
+ {
+ protected DsmlSoapConnection ()
+ {
+ }
+
+ public abstract string SessionId { get; }
+ public XmlNode SoapRequestHeader { get; set; }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public abstract void BeginSession();
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public abstract void EndSession();
+ }
+}
--- /dev/null
+//
+// DsmlSoapHttpConnection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.DirectoryServices;
+using System.Net;
+using System.Net.NetworkInformation;
+using System.Security.Permissions;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class DsmlSoapHttpConnection : DsmlSoapConnection
+ {
+ public DsmlSoapHttpConnection (DsmlDirectoryIdentifier identifier)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DsmlSoapHttpConnection (Uri uri)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DsmlSoapHttpConnection (DsmlDirectoryIdentifier identifier, NetworkCredential credential)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DsmlSoapHttpConnection (DsmlDirectoryIdentifier identifier, NetworkCredential credential, AuthType authType)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public AuthType AuthType { get; set; }
+ [MonoTODO]
+ public override string SessionId {
+ get { throw new NotImplementedException (); }
+ }
+ public string SoapActionHeader { get; set; }
+ public override TimeSpan Timeout { get; set; }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public void Abort (IAsyncResult asyncResult)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ [NetworkInformationPermission (SecurityAction.Assert, Unrestricted = true)]
+ [WebPermission (SecurityAction.Assert, Unrestricted = true)]
+ public IAsyncResult BeginSendRequest (DsmlRequestDocument request, AsyncCallback callback, object state)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [NetworkInformationPermission (SecurityAction.Assert, Unrestricted = true)]
+ [WebPermission (SecurityAction.Assert, Unrestricted = true)]
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public override void BeginSession ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DsmlResponseDocument EndSendRequest (IAsyncResult asyncResult)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ [NetworkInformationPermission (SecurityAction.Assert, Unrestricted = true)]
+ [WebPermission (SecurityAction.Assert, Unrestricted = true)]
+ public override void EndSession ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public override DirectoryResponse SendRequest (DirectoryRequest request)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public DsmlResponseDocument SendRequest (DsmlRequestDocument request)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ErrorResponseCategory.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum ErrorResponseCategory
+ {
+ NotAttempted,
+ CouldNotConnect,
+ ConnectionClosed,
+ MalformedRequest,
+ GatewayInternalError,
+ AuthenticationFailed,
+ UnresolvableUri,
+ Other
+ }
+}
--- /dev/null
+//
+// ErrorResponseException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ public class ErrorResponseException : DirectoryException, ISerializable
+ {
+ public ErrorResponseException ()
+ : this ("Directory response error")
+ {
+ }
+
+ public ErrorResponseException (string message)
+ : base (message)
+ {
+ }
+
+ public ErrorResponseException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ public ErrorResponseException (DsmlErrorResponse response)
+ : this ()
+ {
+ Response = response;
+ }
+
+ public ErrorResponseException (DsmlErrorResponse response, string message)
+ : this (response, message, null)
+ {
+ }
+
+ public ErrorResponseException (DsmlErrorResponse response, string message, Exception inner)
+ : base (message, inner)
+ {
+ Response = response;
+ }
+
+ protected ErrorResponseException (SerializationInfo info, StreamingContext context)
+ {
+ Response = (DsmlErrorResponse) info.GetValue ("Response", typeof (DsmlErrorResponse));
+ }
+
+ public DsmlErrorResponse Response { get; private set; }
+
+ [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter = true)]
+ public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
+ {
+ serializationInfo.AddValue ("Response", Response, typeof (DsmlErrorResponse));
+ }
+ }
+}
--- /dev/null
+//
+// ExtendedDNControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ExtendedDNControl : DirectoryControl
+ {
+ public ExtendedDNControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public ExtendedDNControl (ExtendedDNFlag flag)
+ : this ()
+ {
+ Flag = flag;
+ }
+
+ public ExtendedDNFlag Flag { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ExtendedDNFlag.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum ExtendedDNFlag
+ {
+ HexString,
+ StandardString
+ }
+}
--- /dev/null
+//
+// ExtendedRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ExtendedRequest : DirectoryRequest
+ {
+ public ExtendedRequest ()
+ {
+ }
+
+ public ExtendedRequest (string requestName)
+ {
+ RequestName = requestName;
+ }
+
+ public ExtendedRequest (string requestName, byte [] requestValue)
+ : this (requestName)
+ {
+ RequestValue = requestValue;
+ }
+
+ public string RequestName { get; set; }
+ public byte [] RequestValue { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ExtendedResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ExtendedResponse : DirectoryResponse
+ {
+ internal ExtendedResponse (string responseName, byte [] responseValue)
+ {
+ ResponseName = responseName;
+ ResponseValue = responseValue;
+ }
+
+ [MonoTODO]
+ public string ResponseName { get; private set; }
+ [MonoTODO]
+ public byte [] ResponseValue { get; private set; }
+ }
+}
--- /dev/null
+//
+// LazyCommitControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class LazyCommitControl : DirectoryControl
+ {
+ internal LazyCommitControl ()
+ : base (null, null, false, false)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// LdapConnection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.DirectoryServices;
+using System.Net;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class LdapConnection : DirectoryConnection, IDisposable
+ {
+ public LdapConnection (LdapDirectoryIdentifier identifier)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public LdapConnection (string server)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public LdapConnection (LdapDirectoryIdentifier identifier, NetworkCredential credential)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public LdapConnection (LdapDirectoryIdentifier identifier, NetworkCredential credential, AuthType authType)
+ {
+ throw new NotImplementedException ();
+ }
+
+ ~LdapConnection ()
+ {
+ }
+
+ public AuthType AuthType { get; set; }
+ public bool AutoBind { get; set; }
+ [MonoTODO]
+ public override NetworkCredential Credential {
+ set { throw new NotImplementedException (); }
+ }
+ [MonoTODO]
+ public LdapSessionOptions SessionOptions {
+ get { throw new NotImplementedException (); }
+ }
+ public override TimeSpan Timeout { get; set; }
+
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public void Abort (IAsyncResult asyncResult)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public IAsyncResult BeginSendRequest (DirectoryRequest request, PartialResultProcessing partialMode, AsyncCallback callback, object state)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public IAsyncResult BeginSendRequest (DirectoryRequest request, TimeSpan requestTimeout, PartialResultProcessing partialMode, AsyncCallback callback, object state)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public void Bind ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public void Bind (NetworkCredential newCredential)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public void Dispose ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ protected virtual void Dispose (bool disposing)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DirectoryResponse EndSendRequest (IAsyncResult asyncResult)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public PartialResultsCollection GetPartialResults (IAsyncResult asyncResult)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public override DirectoryResponse SendRequest (DirectoryRequest request)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [DirectoryServicesPermission (SecurityAction.LinkDemand, Unrestricted = true)]
+ public DirectoryResponse SendRequest (DirectoryRequest request, TimeSpan requestTimeout)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// LdapDirectoryIdentifier.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class LdapDirectoryIdentifier : DirectoryIdentifier
+ {
+ public LdapDirectoryIdentifier (string server)
+ {
+ Servers = new string [] {server};
+ }
+
+ public LdapDirectoryIdentifier (string server, int portNumber)
+ : this (server)
+ {
+ PortNumber = portNumber;
+ }
+
+ public LdapDirectoryIdentifier (string server, bool fullyQualifiedDnsHostName, bool connectionless)
+ : this (server)
+ {
+ FullyQualifiedDnsHostName = fullyQualifiedDnsHostName;
+ Connectionless = connectionless;
+ }
+
+ public LdapDirectoryIdentifier (string [] servers, bool fullyQualifiedDnsHostName, bool connectionless)
+ {
+ Servers = servers;
+ FullyQualifiedDnsHostName = fullyQualifiedDnsHostName;
+ Connectionless = connectionless;
+ }
+
+ public LdapDirectoryIdentifier (string server, int portNumber, bool fullyQualifiedDnsHostName, bool connectionless)
+ : this (new string [] {server}, portNumber, fullyQualifiedDnsHostName, connectionless)
+ {
+ }
+
+ public LdapDirectoryIdentifier (string [] servers, int portNumber, bool fullyQualifiedDnsHostName, bool connectionless)
+ : this (servers, fullyQualifiedDnsHostName, connectionless)
+ {
+ PortNumber = portNumber;
+ }
+
+ public bool Connectionless { get; private set; }
+ public bool FullyQualifiedDnsHostName { get; private set; }
+ public int PortNumber { get; private set; }
+ public string [] Servers { get; private set; }
+ }
+}
--- /dev/null
+//
+// LdapException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.DirectoryServices;
+using System.Runtime.Serialization;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ public class LdapException : DirectoryException, ISerializable
+ {
+ public LdapException ()
+ : this ("LDAP error")
+ {
+ }
+
+ public LdapException (int errorCode)
+ : this ()
+ {
+ ErrorCode = errorCode;
+ PartialResults = new PartialResultsCollection ();
+ }
+
+ public LdapException (string message)
+ : this (message, null)
+ {
+ }
+
+ public LdapException (int errorCode, string message)
+ : this (errorCode, message, (Exception) null)
+ {
+ }
+
+ public LdapException (string message, Exception inner)
+ : this (0, message, inner)
+ {
+ }
+
+ public LdapException (int errorCode, string message, Exception inner)
+ : base (message, inner)
+ {
+ ErrorCode = errorCode;
+ PartialResults = new PartialResultsCollection ();
+ }
+
+ public LdapException (int errorCode, string message, string serverErrorMessage)
+ : this (errorCode, message, (Exception) null)
+ {
+ ServerErrorMessage = serverErrorMessage;
+ }
+
+ [MonoTODO]
+ protected LdapException (SerializationInfo info, StreamingContext context)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public int ErrorCode { get; private set; }
+ public PartialResultsCollection PartialResults { get; private set; }
+ public string ServerErrorMessage { get; private set; }
+
+ [MonoTODO]
+ [SecurityPermission (SecurityAction.Demand, SerializationFormatter = true)]
+ public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// LdapSessionOptions.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class LdapSessionOptions
+ {
+ internal LdapSessionOptions ()
+ {
+ }
+
+ public bool AutoReconnect { get; set; }
+ public string DomainName { get; set; }
+ public string HostName { get; set; }
+ [MonoTODO]
+ public bool HostReachable { get; private set; }
+ public LocatorFlags LocatorFlag { get; set; }
+ public TimeSpan PingKeepAliveTimeout { get; set; }
+ public int PingLimit { get; set; }
+ public TimeSpan PingWaitTimeout { get; set; }
+ public int ProtocolVersion { get; set; }
+ public QueryClientCertificateCallback QueryClientCertificate { get; set; }
+ public ReferralCallback ReferralCallback { get; set; }
+ public ReferralChasingOptions ReferralChasing { get; set; }
+ public int ReferralHopLimit { get; set; }
+ public bool RootDseCache { get; set; }
+ public string SaslMethod { get; set; }
+ public bool Sealing { get; set; }
+ public bool SecureSocketLayer { get; set; }
+ [MonoTODO]
+ public object SecurityContext { get; private set;}
+ public TimeSpan SendTimeout { get; set; }
+ public bool Signing { get; set; }
+ [MonoTODO]
+ public SecurityPackageContextConnectionInformation SslInformation { get; private set; }
+ public int SspiFlag { get; set; }
+ public bool TcpKeepAlive { get; set; }
+ public VerifyServerCertificateCallback VerifyServerCertificate { get; set; }
+
+ [MonoTODO]
+ public void FastConcurrentBind ()
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void StartTransportLayerSecurity (DirectoryControlCollection controls)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public void StopTransportLayerSecurity ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// LocatorFlags.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Flags]
+ public enum LocatorFlags
+ {
+ None = 0,
+ ForceRediscovery = 1,
+ DirectoryServicesRequired = 0x10,
+ DirectoryServicesPreferred = 0x20,
+ GCRequired = 0x40,
+ PdcRequired = 0x80,
+ IPRequired = 0x200,
+ KdcRequired = 0x400,
+ TimeServerRequired = 0x800,
+ WriteableRequired = 0x1000,
+ GoodTimeServerPreferred = 0x2000,
+ AvoidSelf = 0x4000,
+ OnlyLdapNeeded = 0x8000,
+ IsFlatName = 0x10000,
+ IsDnsName = 0x20000,
+ ReturnDnsName = 0x40000000,
+ ReturnFlatName = -0x7FFFFFFF
+ }
+}
--- /dev/null
+//
+// ModifyDNRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ModifyDNRequest : DirectoryRequest
+ {
+ public ModifyDNRequest ()
+ {
+ }
+
+ public ModifyDNRequest (string distinguishedName, string newParentDistinguishedName, string newName)
+ {
+ DistinguishedName = distinguishedName;
+ NewParentDistinguishedName = newParentDistinguishedName;
+ NewName = newName;
+ }
+
+ public bool DeleteOldRdn { get; set; }
+ public string DistinguishedName { get; set; }
+ public string NewName { get; set; }
+ public string NewParentDistinguishedName { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ModifyDNResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ModifyDNResponse : DirectoryResponse
+ {
+ internal ModifyDNResponse ()
+ {
+ }
+ }
+}
--- /dev/null
+//
+// ModifyRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class ModifyRequest : DirectoryRequest
+ {
+ static DirectoryAttributeModification ToAttr (DirectoryAttributeOperation operation, string attributeName, params object [] values)
+ {
+ var a = new DirectoryAttributeModification ();
+ a.Name = attributeName;
+ a.Operation = operation;
+ a.AddRange (values);
+ return a;
+ }
+
+ public ModifyRequest ()
+ {
+ }
+
+ public ModifyRequest (string distinguishedName, DirectoryAttributeOperation operation, string attributeName, params object [] values)
+ : this (distinguishedName, new DirectoryAttributeModification [] {ToAttr (operation, attributeName, values)})
+ {
+ }
+
+ public ModifyRequest (string distinguishedName, params DirectoryAttributeModification [] modifications)
+ : this ()
+ {
+ DistinguishedName = distinguishedName;
+ Modifications = new DirectoryAttributeModificationCollection ();
+ Modifications.AddRange (modifications);
+ }
+
+ public string DistinguishedName { get; set; }
+
+ public DirectoryAttributeModificationCollection Modifications { get; private set; }
+
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ModifyResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ModifyResponse : DirectoryResponse
+ {
+ internal ModifyResponse ()
+ {
+ }
+ }
+}
--- /dev/null
+//
+// NotifyOfNewConnectionCallback.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Net;
+
+namespace System.DirectoryServices.Protocols
+{
+ public delegate bool NotifyOfNewConnectionCallback (
+ LdapConnection primaryConnection,
+ LdapConnection referralFromConnection,
+ string newDistinguishedName,
+ LdapDirectoryIdentifier identifier,
+ LdapConnection newConnection,
+ NetworkCredential credential,
+ long currentUserToken,
+ int errorCodeFromBind);
+}
--- /dev/null
+//
+// PageResultRequestControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class PageResultRequestControl : DirectoryControl
+ {
+ public PageResultRequestControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public PageResultRequestControl (byte [] cookie)
+ : this ()
+ {
+ Cookie = cookie;
+ }
+
+ public PageResultRequestControl (int pageSize)
+ : this ()
+ {
+ PageSize = pageSize;
+ }
+
+ public byte [] Cookie { get; set; }
+ public int PageSize { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// PageResultResponseControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class PageResultResponseControl : DirectoryControl
+ {
+ internal PageResultResponseControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public byte [] Cookie { get; set; }
+ [MonoTODO]
+ public int TotalCount { get; private set; }
+ }
+}
--- /dev/null
+//
+// PartialResultProcessing.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum PartialResultProcessing
+ {
+ NoPartialResultSupport,
+ ReturnPartialResults,
+ ReturnPartialResultsAndNotifyCallback
+ }
+}
--- /dev/null
+//
+// PartialResultsCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class PartialResultsCollection : ReadOnlyCollectionBase
+ {
+ internal PartialResultsCollection ()
+ {
+ }
+
+ public object this [int index] {
+ get { return InnerList [index]; }
+ }
+
+ public bool Contains (object value)
+ {
+ return InnerList.Contains (value);
+ }
+
+ public void CopyTo (object [] values, int index)
+ {
+ InnerList.CopyTo (values, index);
+ }
+
+ public int IndexOf (object value)
+ {
+ return InnerList.IndexOf (value);
+ }
+ }
+}
--- /dev/null
+//
+// PermissiveModifyControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class PermissiveModifyControl : DirectoryControl
+ {
+ public PermissiveModifyControl ()
+ : base (null, null, false, false)
+ {
+ }
+ }
+}
--- /dev/null
+//
+// QueryClientCertificateCallback.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Security.Cryptography.X509Certificates;
+
+namespace System.DirectoryServices.Protocols
+{
+ public delegate X509Certificate QueryClientCertificateCallback (LdapConnection connection, byte [] [] trustedCAs);
+}
--- /dev/null
+//
+// QueryForConnectionCallback.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Net;
+
+namespace System.DirectoryServices.Protocols
+{
+ public delegate LdapConnection QueryForConnectionCallback (
+ LdapConnection primaryConnection,
+ LdapConnection referralFromConnection,
+ string newDistinguishedName,
+ LdapDirectoryIdentifier identifier,
+ NetworkCredential credential,
+ long currentUserToken);
+}
--- /dev/null
+//
+// QuotaControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Security.Principal;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class QuotaControl : DirectoryControl
+ {
+ public QuotaControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public QuotaControl (SecurityIdentifier querySid)
+ : this ()
+ {
+ QuerySid = querySid;
+ }
+
+ public SecurityIdentifier QuerySid { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ReferralCallback.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public sealed class ReferralCallback
+ {
+ public ReferralCallback ()
+ {
+ }
+
+ public DereferenceConnectionCallback DereferenceConnection { get; set; }
+ public NotifyOfNewConnectionCallback NotifyNewConnection { get; set; }
+ public QueryForConnectionCallback QueryForConnection { get; set; }
+ }
+}
--- /dev/null
+//
+// ReferralChasingOptions.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Flags]
+ public enum ReferralChasingOptions
+ {
+ None = 0,
+ Subordinate = 0x20,
+ External = 0x40,
+ All = 0x60
+ }
+}
--- /dev/null
+//
+// ResultCode.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum ResultCode
+ {
+ Success,
+ OperationsError,
+ ProtocolError,
+ TimeLimitExceeded,
+ SizeLimitExceeded,
+ CompareFalse,
+ CompareTrue,
+ AuthMethodNotSupported,
+ StrongAuthRequired,
+ ReferralV2,
+ Referral,
+ AdminLimitExceeded,
+ UnavailableCriticalExtension,
+ ConfidentialityRequired,
+ SaslBindInProgress,
+ NoSuchAttribute = 16,
+ UndefinedAttributeType,
+ InappropriateMatching,
+ ConstraintViolation,
+ AttributeOrValueExists,
+ InvalidAttributeSyntax,
+ NoSuchObject = 32,
+ AliasProblem,
+ InvalidDNSyntax,
+ AliasDereferencingProblem = 36,
+ InappropriateAuthentication = 48,
+ InsufficientAccessRights = 50,
+ Busy,
+ Unavailable,
+ UnwillingToPerform,
+ LoopDetect,
+ SortControlMissing = 60,
+ OffsetRangeError,
+ NamingViolation = 64,
+ ObjectClassViolation,
+ NotAllowedOnNonLeaf,
+ NotAllowedOnRdn,
+ EntryAlreadyExists,
+ ObjectClassModificationsProhibited,
+ ResultsTooLarge,
+ AffectsMultipleDsas,
+ VirtualListViewError = 76,
+ Other = 80
+ }
+}
--- /dev/null
+//
+// SearchOption.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum SearchOption
+ {
+ DomainScope,
+ PhantomRoot
+ }
+}
--- /dev/null
+//
+// SearchOptionsControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SearchOptionsControl : DirectoryControl
+ {
+ public SearchOptionsControl ()
+ : base (null, null, false, false)
+ {
+ }
+
+ public SearchOptionsControl (SearchOption flags)
+ : this ()
+ {
+ SearchOption = flags;
+ }
+
+ public SearchOption SearchOption { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// SearchRequest.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Specialized;
+using System.Xml;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchRequest : DirectoryRequest
+ {
+ public SearchRequest ()
+ {
+ Attributes = new StringCollection ();
+ }
+
+ [MonoTODO]
+ public SearchRequest (string distinguishedName, string ldapFilter, SearchScope searchScope, params string [] attributeList)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public SearchRequest (string distinguishedName, XmlDocument filter, SearchScope searchScope, params string [] attributeList)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public DereferenceAlias Aliases { get; set; }
+ public StringCollection Attributes { get; private set; }
+ public string DistinguishedName { get; set; }
+ public object Filter { get; set; }
+ public SearchScope Scope { get; set; }
+ public int SizeLimit { get; set; }
+ public TimeSpan TimeLimit { get; set; }
+ public bool TypesOnly { get; set; }
+
+ [MonoTODO]
+ protected override XmlElement ToXmlNode (XmlDocument doc)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// SearchResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchResponse : DirectoryResponse
+ {
+ internal SearchResponse ()
+ {
+ ArrayList references = new ArrayList ();
+ References = new SearchResultReferenceCollection (references);
+ }
+
+ [MonoTODO]
+ public override DirectoryControl [] Controls {
+ get { throw new NotImplementedException (); }
+ }
+ [MonoTODO]
+ public SearchResultEntryCollection Entries { get; private set; }
+ [MonoTODO]
+ public override string ErrorMessage {
+ get { throw new NotImplementedException (); }
+ }
+ [MonoTODO]
+ public override string MatchedDN {
+ get { throw new NotImplementedException (); }
+ }
+ [MonoTODO]
+ public SearchResultReferenceCollection References { get; private set; }
+ [MonoTODO]
+ public override Uri [] Referral {
+ get { throw new NotImplementedException (); }
+ }
+ [MonoTODO]
+ public override ResultCode ResultCode {
+ get { throw new NotImplementedException (); }
+ }
+ }
+}
--- /dev/null
+//
+// SearchResponse.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchResultAttributeCollection : DictionaryBase
+ {
+ internal SearchResultAttributeCollection ()
+ {
+ }
+
+ public ICollection AttributeNames {
+ get { return Dictionary.Keys; }
+ }
+
+ public DirectoryAttribute this [string attributeName] {
+ get { return (DirectoryAttribute) Dictionary [attributeName]; }
+ }
+
+ public ICollection Values {
+ get { return Dictionary.Values; }
+ }
+
+ public bool Contains (string attributeName)
+ {
+ return Dictionary.Contains (attributeName);
+ }
+
+ public void CopyTo (DirectoryAttribute [] array, int index)
+ {
+ Values.CopyTo (array, index);
+ }
+ }
+}
--- /dev/null
+//
+// SearchResultEntry.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SearchResultEntry
+ {
+ internal SearchResultEntry (SearchResultAttributeCollection attributes, DirectoryControl [] controls, string distinguishedName)
+ {
+ Attributes = attributes;
+ Controls = controls;
+ DistinguishedName = distinguishedName;
+ }
+
+ [MonoTODO]
+ public SearchResultAttributeCollection Attributes { get; private set; }
+ [MonoTODO]
+ public DirectoryControl [] Controls { get; private set; }
+ [MonoTODO]
+ public string DistinguishedName { get; private set; }
+ }
+}
--- /dev/null
+//
+// SearchResultEntryCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchResultEntryCollection : ReadOnlyCollectionBase
+ {
+ internal SearchResultEntryCollection ()
+ {
+ }
+
+ public SearchResultEntry this [int index] {
+ get { return (SearchResultEntry) InnerList [index]; }
+ }
+
+ public bool Contains (SearchResultEntry value)
+ {
+ return InnerList.Contains (value);
+ }
+
+ public void CopyTo (SearchResultEntry [] values, int index)
+ {
+ InnerList.CopyTo (values, index);
+ }
+
+ public int IndexOf (SearchResultEntry value)
+ {
+ return InnerList.IndexOf (value);
+ }
+ }
+}
--- /dev/null
+//
+// SearchResultReference.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchResultReference
+ {
+ internal SearchResultReference (DirectoryControl [] controls, Uri [] reference)
+ {
+ Controls = controls;
+ Reference = reference;
+ }
+
+ public DirectoryControl [] Controls { get; private set; }
+ public Uri [] Reference { get; private set; }
+
+ }
+}
--- /dev/null
+//
+// SearchResultReferenceCollection.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SearchResultReferenceCollection : ReadOnlyCollectionBase
+ {
+ ArrayList list;
+
+ internal SearchResultReferenceCollection (ArrayList list)
+ {
+ this.list = list;
+ }
+
+ public SearchResultReference this [int index] {
+ get { return (SearchResultReference) list [index]; }
+ }
+
+ public bool Contains (SearchResultReference value)
+ {
+ return list.Contains (value);
+ }
+
+ public void CopyTo (SearchResultReference [] values, int index)
+ {
+ list.CopyTo (values, index);
+ }
+
+ public int IndexOf (SearchResultReference value)
+ {
+ return list.IndexOf (value);
+ }
+ }
+}
--- /dev/null
+//
+// SearchScope.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum SearchScope
+ {
+ Base,
+ OneLevel,
+ Subtree
+ }
+}
--- /dev/null
+//
+// SecurityDescriptorFlagControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SecurityDescriptorFlagControl : DirectoryControl
+ {
+ [MonoTODO]
+ public SecurityDescriptorFlagControl ()
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [MonoTODO]
+ public SecurityDescriptorFlagControl (SecurityMasks masks)
+ : this ()
+ {
+ SecurityMasks = masks;
+ }
+
+ public SecurityMasks SecurityMasks { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// SecurityMasks.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Flags]
+ public enum SecurityMasks
+ {
+ None = 0,
+ Owner = 1,
+ Group = 2,
+ Dacl = 4,
+ Sacl = 8
+ }
+}
--- /dev/null
+//
+// SecurityPackageContextConnectionInformation.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Security.Authentication;
+using System.Security.Cryptography;
+
+namespace System.DirectoryServices.Protocols
+{
+ [MonoTODO]
+ public class SecurityPackageContextConnectionInformation
+ {
+ internal SecurityPackageContextConnectionInformation (
+ CipherAlgorithmType algorithmIdentifier,
+ int cipherStrength,
+ int exchangeStrength,
+ HashAlgorithmType hash,
+ int hashStrength,
+ int keyExchangeAlgorithm,
+ SecurityProtocol protocol)
+ {
+ AlgorithmIdentifier = algorithmIdentifier;
+ CipherStrength = cipherStrength;
+ ExchangeStrength = exchangeStrength;
+ Hash = hash;
+ HashStrength = hashStrength;
+ KeyExchangeAlgorithm = keyExchangeAlgorithm;
+ Protocol = protocol;
+ }
+
+ public CipherAlgorithmType AlgorithmIdentifier { get; private set; }
+ public int CipherStrength { get; private set; }
+ public int ExchangeStrength { get; private set; }
+ public HashAlgorithmType Hash { get; private set; }
+ public int HashStrength { get; private set; }
+ public int KeyExchangeAlgorithm { get; private set; }
+ public SecurityProtocol Protocol { get; private set; }
+ }
+}
--- /dev/null
+//
+// SecurityProtocol.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public enum SecurityProtocol
+ {
+ Pct1Server,
+ Pct1Client,
+ Ssl2Server,
+ Ssl2Client,
+ Ssl3Server,
+ Ssl3Client,
+ Tls1Server,
+ Tls1Client,
+ }
+}
--- /dev/null
+//
+// ShowDeletedControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class ShowDeletedControl : DirectoryControl
+ {
+ [MonoTODO]
+ public ShowDeletedControl ()
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// ShowDeletedControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SortKey
+ {
+ public SortKey ()
+ {
+ }
+
+ public SortKey (string attributeName, string matchingRule, bool reverseOrder)
+ {
+ AttributeName = attributeName;
+ MatchingRule = matchingRule;
+ ReverseOrder = reverseOrder;
+ }
+
+ public string AttributeName { get; set; }
+ public string MatchingRule { get; set; }
+ public bool ReverseOrder { get; set; }
+ }
+}
--- /dev/null
+//
+// SortRequestControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SortRequestControl : DirectoryControl
+ {
+ [MonoTODO]
+ public SortRequestControl (params SortKey [] sortKeys)
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ();
+ SortKeys = sortKeys;
+ }
+
+ [MonoTODO]
+ public SortRequestControl (string attributeName, bool reverseOrder)
+ : this (attributeName, null, reverseOrder)
+ {
+ }
+
+ [MonoTODO]
+ public SortRequestControl (string attributeName, string matchingRule, bool reverseOrder)
+ : this (new SortKey (attributeName, matchingRule, reverseOrder))
+ {
+ }
+
+ public SortKey [] SortKeys { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// SortResponseControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class SortResponseControl : DirectoryControl
+ {
+ internal SortResponseControl (string attributeName, ResultCode result)
+ : base (null, null, false, false)
+ {
+ AttributeName = attributeName;
+ Result = result;
+ }
+
+ [MonoTODO]
+ public string AttributeName { get; private set; }
+ [MonoTODO]
+ public ResultCode Result { get; private set; }
+ }
+}
--- /dev/null
+//
+// TlsOperationException.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+// Copyright (C) 2009 Novell, Inc.
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Runtime.Serialization;
+using System.Security.Permissions;
+
+namespace System.DirectoryServices.Protocols
+{
+ [Serializable]
+ public class TlsOperationException : DirectoryOperationException
+ {
+ const string default_message = "Directory response error";
+
+ public TlsOperationException ()
+ : this (default_message)
+ {
+ }
+
+ public TlsOperationException (string message)
+ : base (message)
+ {
+ }
+
+ public TlsOperationException (string message, Exception inner)
+ : base (message, inner)
+ {
+ }
+
+ public TlsOperationException (DirectoryResponse response)
+ : base (response, default_message)
+ {
+ }
+
+ public TlsOperationException (DirectoryResponse response, string message)
+ : this (response, message, null)
+ {
+ }
+
+ public TlsOperationException (DirectoryResponse response, string message, Exception inner)
+ : base (response, message, inner)
+ {
+ }
+
+ protected TlsOperationException (SerializationInfo info, StreamingContext context)
+ : base (info, context)
+ {
+ }
+
+ [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter = true)]
+ public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
+ {
+ base.GetObjectData (serializationInfo, streamingContext);
+ }
+ }
+}
--- /dev/null
+//
+// TreeDeleteControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class TreeDeleteControl : DirectoryControl
+ {
+ [MonoTODO]
+ public TreeDeleteControl ()
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// VerifyNameControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class VerifyNameControl : DirectoryControl
+ {
+ public VerifyNameControl ()
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ();
+ }
+
+ public VerifyNameControl (string serverName)
+ : this ()
+ {
+ ServerName = serverName;
+ }
+
+ public VerifyNameControl (string serverName, int flag)
+ : this (serverName)
+ {
+ Flag = flag;
+ }
+
+ public int Flag { get; set; }
+ public string ServerName { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// VerifyServerCertificateCallback.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Security.Cryptography.X509Certificates;
+
+namespace System.DirectoryServices.Protocols
+{
+ public delegate bool VerifyServerCertificateCallback (LdapConnection connection, X509Certificate certificate);
+}
--- /dev/null
+//
+// VlvRequestControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Text;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class VlvRequestControl : DirectoryControl
+ {
+ [MonoTODO]
+ public VlvRequestControl ()
+ : base (null, null, false, false)
+ {
+ throw new NotImplementedException ("ctor-chain");
+ }
+
+ [MonoTODO]
+ public VlvRequestControl (int beforeCount, int afterCount, byte [] target)
+ : this ()
+ {
+ BeforeCount = beforeCount;
+ AfterCount = afterCount;
+ Target = target;
+ }
+
+ public VlvRequestControl (int beforeCount, int afterCount, int offset)
+ : this ()
+ {
+ BeforeCount = beforeCount;
+ AfterCount = afterCount;
+ Offset = offset;
+ }
+
+ public VlvRequestControl (int beforeCount, int afterCount, string target)
+ : this ()
+ {
+ BeforeCount = beforeCount;
+ AfterCount = afterCount;
+ Target = Encoding.ASCII.GetBytes (target);
+ }
+
+ public int AfterCount { get; set; }
+ public int BeforeCount { get; set; }
+ public byte [] ContextId { get; set; }
+ public int EstimateCount { get; set; }
+ public int Offset { get; set; }
+ public byte [] Target { get; set; }
+
+ [MonoTODO]
+ public override byte [] GetValue ()
+ {
+ throw new NotImplementedException ();
+ }
+ }
+}
--- /dev/null
+//
+// VlvResponseControl.cs
+//
+// Author:
+// Atsushi Enomoto <atsushi@ximian.com>
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Linq;
+
+namespace System.DirectoryServices.Protocols
+{
+ public class VlvResponseControl : DirectoryControl
+ {
+ internal VlvResponseControl (int contentCount, byte [] contextId, ResultCode result, int targetPosition)
+ : base (null, null, false, true)
+ {
+ throw new NotImplementedException ("ctor-chain");
+
+ ContentCount = contentCount;
+ ContextId = contextId;
+ Result = result;
+ TargetPosition = targetPosition;
+ }
+
+ [MonoTODO]
+ public int ContentCount { get; private set; }
+ [MonoTODO]
+ public byte [] ContextId { get; private set; }
+ [MonoTODO]
+ public ResultCode Result { get; private set; }
+ [MonoTODO]
+ public int TargetPosition { get; private set; }
+ }
+}