2007-05-02 Jonathan Chambers * RemotingConfiguration.cs: Added Configure overload for 2.0 with MonoTODO for security. 2006-12-18 Lluis Sanchez Gual * RemotingServices.cs: FieldSetter and FieldGetter methods need to be handled in a special way, since they are the only private methods which can be called from a subclass. In UpdateOutArgObject, removed support for StringBuilder objects, now supporting only arrays, like MS.NET. 2006-11-22 Lluis Sanchez Gual * RemotingServices.cs: Avoid generating urls with negative numbers. When building the url for the RemoteActivationService service, avoid duplicate path separator. 2006-10-30 Gert Driesen * RemotingServices.cs: Explicitly set FormatterAssemblyStyle to Full in 2.0 profile, as the default has changed from Full to Simple. Fixes bug #79732. 2006-08-23 Lluis Sanchez Gual * ObjRef.cs: Throw a TypeLoadException exception if the referenced type can't be found. That's better than a nullref. 2006-07-15 Jonathan Chambers * RemotingServices.cs: Begin implementing COM Interop. 2006-04-27 Robert Jordan * RemotingServices.cs (IsObjectOutOfAppDomain, IsObjectOutOfContext): add parameter validation. Fixes bug #78164. 2006-04-07 Sebastien Pouliot * RemotingServices.cs: Assert SerializationFormatter permissions if the runtime wants to do cross-appdomain serialization (this will need to be better reviewed/tested later but it fix some current issues). 2005-12-07 Robert Jordan * RemotingServices.cs: Accept the application name beeing a part of the object URI. Fixes bug #76809. 2005-11-06 Svetlana Zholkovsky * RemotingConfiguration.cs: Fix ConfigHandler.OnEndElement to handle case when the configuration file contains custom providers with child elements. * ServerIdentity.cs: clear _serverSink field in the DisposeServerObject method. 2005-10-18 Lluis Sanchez Gual * RemotingConfiguration.cs: The value for customErrors tag must be case-insensitive. Fixes bug #76466 (patch by Robert Jordan). 2005-10-17 Lluis Sanchez Gual * RemotingConfiguration.cs: Rethrow catched exceptions in ReadConfigFile (patch by Robert Jordan). Fixes bug #76434. Properly set the application name. 2005-08-18 Lluis Sanchez Gual * RemotingServices.cs: Notify marshals, unmarshals and disconnections to TrackingServices. Fixes bug #75814. 2005-06-06 Zoltan Varga * ObjRef.cs RemotingServices.cs: Add some missing 2.0 attributes. 2005-05-26 Ben Maurer * InternalRemotingServices.cs: Move hashtable init to cctor. Removes double checked locking and locking on typeof. 2005-05-17 Lluis Sanchez Gual * ObjRef.cs: Use IsInstanceOfType instead of IsAssignableFrom since GetType() may not return the correct type if the object is a remoting proxy. 2005-05-12 Atsushi Enomoto * RemotingConfiguration.cs : MiniParser->SmallXmlParser changes. 2005-05-09 Lluis Sanchez Gual * RemotingServices.cs: Fix warning. 2004-10-26 Lluis Sanchez Gual * RemotingServices.cs: Added several serialization methods needed by the cross app domain wrappers. In GetOrCreateClientIdentity(), set the domain of the proxy if it references an object in another domain. 2004-09-28 Lluis Sanchez Gual * RemotingServices.cs: Allways pass the uri when calling GetClientChannelSinkChain, even if it has channel data. This fixes bug 66768. 2004-09-27 Lluis Sanchez Gual * ServerIdentity.cs: Only set the target identity if it has not already been set. 2004-09-23 Lluis Sanchez Gual * RemotingServices.cs: Fixed wrong patch for InternalExecuteMessage. The MethodBase in the message may not be the same type of the object (the method can be called using an interface). 2004-09-22 Lluis Sanchez Gual * RemotingServices.cs: In InternalExecute, use MethodBase instead of MonoMethod, so it can be also used for running constructors. * ServerIdentity.cs: Added methods for getting and setting the client proxy in ClientActivatedIdentity. This is needed for CBOs, since messages need to be dispatched using the proxy as "this", not the real object. 2004-09-11 Ben Maurer * RemotingServices.cs: use MethodBase rather than looking for the method ourselves. It has higher perf in x-ad calls. 2004-09-05 Ben Maurer * RemotingServices.cs (IsMethodOverloaded): use the internal method GetMethodsByName. It does much less work than GetMembers. 2004-09-05 Ben Maurer * RemotingServices.cs (IsOneWay): use IsDefined rather than GetCustomAttributes. It is much faster. 2004-07-22 Lluis Sanchez Gual * ObjRef.cs: Fixed type check in in ObjRef constructor. The requested class must be the object class or a base class. This fixes bug #61249. 2004-07-22 Lluis Sanchez Gual * RemotingServices.cs: Changed GetMethodBaseFromMethodMessage so its code can be reused internally. Also fixed bug when gettting a method from an interface. 2004-07-02 Lluis Sanchez Gual * ServerIdentity.cs: When disposing an identity, detach the identity from the object, so it can be safely marshalled again. * RemotingServices.cs: Fixed IsObjectOutOfContext and IsObjectOutOfAppDomain. In SetObjectUriForMarshal, take into account contextful objects. 2004-07-01 Lluis Sanchez Gual * RemotingConfiguration.cs: Avoid adding "id" and "type" as custom properties of providers. This fixes bug #60934. 2004-06-15 Gert Driesen * RemotingTimeoutException.cs: added missing serialization ctor * ServerException.cs: added missing serialization ctor 2004-06-15 Lluis Sanchez Gual * RemotingConfiguration.cs: Read application name from configuraation file. 2004-06-01 Gert Driesen * RemotingServices.cs: Added missing Conditional attribute and MonoTODO attribute on LogRemotingStage 2004-05-11 Lluis Sanchez Gual * RemotingConfiguration.cs: Added method for configuring chanels with the delayed client load flag. Added locks for accessing internal tables. 2004-05-11 Lluis Sanchez Gual * RemotingServices.cs: In GetMethodBaseFromMethodMessage, look for constructors if no method is found. 2004-05-07 Lluis Sanchez Gual * SoapServices.cs: Support encoded namespace names in DecodeXmlNamespaceForClrTypeNamespace. Thanks to George Kodinov. 2004-04-28 Lluis Sanchez Gual * RemotingServices.cs: When create a ReturnMessage, provide an array with all parameters, including input parameters. 2004-04-26 Lluis Sanchez Gual * ObjRef.cs: Little optimization. 2004-03-09 Lluis Sanchez Gual * RemotingServices.cs: Marshal(): If the object is a proxy, return the ObjRef stored in the identity object. 2004-03-04 Lluis Sanchez Gual * Identity.cs: Removed object type from Identity, since it is hold now in the IRemotingTypeInfo object. * ServerIdentity.cs: Added object type. * TypeInfo.cs: Added null check for the class hierarchy. 2004-02-17 Lluis Sanchez Gual * RemotingServices.cs: Client identities are registered using the full url, not the object uri, so they must be unregistered using the same key. 2004-01-24 Lluis Sanchez Gual * TypeInfo.cs: The list of interfaces may be null. Added check. 2004-01-19 Lluis Sanchez Gual * RemotingServices.cs: When marshalling a custom proxy, allow the creation of a new identity. This fixes bug #52921. * ServerIdentity.cs: Allow the creation of server identities that represent a custom proxy instead of a real object. 2003-12-10 Lluis Sanchez Gual * SoapServices.cs: Little fix: correctly encode namespaces. 2003-12-10 Martin Willemoes Hansen * RemotingConfiguration.cs: fixed wrong attribute name sponsorShipTimeOut it should be sponsorshipTimeout 2003-12-03 Lluis Sanchez Gual * SoapServices.cs: Little fix in namespace construction. 2003-11-28 Dick Porter * TypeInfo.cs: * RemotingConfiguration.cs: Use the char form of IndexOf, so that the comparison is done with the Invariant culture. 2003-11-26 Lluis Sanchez Gual * InternalRemotingServices.cs: Fixed GetCachedSoapAttribute(). * RemotingConfiguration.cs: Implemented CustomErrorsEnabled(). Added support for soapInterop configuration section. * SoapServices.cs: Several fixes to match MS behavior. 2003-11-25 Lluis Sanchez Gual * InternalRemotingServices.cs: Implemented GetCachedSoapAttribute(). * SoapServices.cs: Implemented missing methods. * WellKnownClientTypeEntry.cs: Initialize object_url in constructor. 2003-11-24 Jackson Harper * ServerIdentity.cs: Get non public types, so remote objects can be non public or have non public constructors. 2003-11-19 Lluis Sanchez Gual * InternalRemotingServices.cs: Added missing attributes. 2003-11-17 Lluis Sanchez Gual * InternalRemotingServices.cs: Added CLSCompliant to SetServerIdentity (MethodCall is not compliant) * IObjectHandle.cs: Set correct value for Guid. 2003-11-16 Lluis Sanchez Gual * IObjectHandle.cs, ObjectHandle.cs: Added missing attributes. * RemotingConfiguration.cs: GetRegisteredActivatedClientTypes made public. Declared CustomErrorsEnabled() method. * RemotingServices.cs: Implemented GetSessionIdForMethodMessage(). IsAsyncMessage must be internal. * InternalRemotingServices.cs: Added. 2003-11-13 Lluis Sanchez Gual * RemotingServices.cs: Add ".rem" suffix to generated uri names. 2003-11-12 Lluis Sanchez Gual * RemotingConfiguration.cs: Implemented all remaining functionality. * ActivatedClientTypeEntry.cs: Set the value of ObjectType in the constructor * ActivatedServiceTypeEntry.cs, WellKnownClientTypeEntry.cs, WellKnownServiceTypeEntry.cs: Check that the provided type is valid. 2003-11-11 Lluis Sanchez Gual * RemotingConfiguration.cs: Added initial implementation of Configure method by Jaime Anguiano. 2003-11-11 Lluis Sanchez Gual * ActivatedClientTypeEntry.cs, ActivatedServiceTypeEntry.cs, IRemotingTypeInfo.cs, RemotingServices.cs, WellKnownServiceTypeEntry.cs: Removed some TODOs. 2003-11-01 Zoltan Varga * RemotingServices.cs (GetDomainProxy): Use the new InvokeInDomain function instead of calling SetDomain. 2003-10-23 Lluis Sanchez Gual * RemotingServices.cs: Do not create an identity for an object if it already has one. 2003-10-22 Gonzalo Paniagua Javier * RemotingServices.cs: (NewUri) use Interlocked.Increment on next_id. 2003-10-09 Lluis Sanchez Gual * ObjRef.cs: Added new constructor to support CAD channel. 2003-10-08 Lluis Sanchez Gual * Identity.cs, RemotingServices.cs: Fixed memory leak. I Changed reference to proxy in ClientIdentity to a WeakReference. This fixes a memory leak. * RemotingServices.cs: Ignore first "/" char in uris when looking for and object. Take into account that identity now has a weak reference of the proxy. 2003-09-25 Gonzalo Paniagua Javier * ObjectHandle.cs: simplified and fix InitializeLifetimeService. 2003-09-11 Lluis Sanchez Gual * RemotingServices.cs: Collect value of parameters with the Out flag into the return message. Also set and reset CallContext. Added method UpdateOutArgObject. 2003-08-25 Lluis Sanchez Gual * RemotingServices.cs: Some small fixes. 2003-08-14 Lluis Sanchez Gual * ObjRef.cs: Implemented IsFromThisProcess(). * RemotingServices.cs: Implemented methods GetLifetimeService and GetEnvoyChainForProxy. Stubbed LogRemotingStage. 2003-07-29 Lluis Sanchez Gual * RemotingServices.cs: GetObjectUri(): For client proxies, return the target url. 2003-07-26 Duncan Mak * SoapServices.cs (XmlNsForClrTypeWithNsAndAssembly): Fixed typo. It's 'Ns', but 'Ms'. 2003-07-25 Lluis Sanchez Gual * RemotingServices.cs: If the type for a proxy is not available in the client site, use the MarshalByRefObject type. 2003-07-21 Lluis Sanchez Gual * ServerIdentity.cs: Fixed bug #46645 2003-07-16 Lluis Sanchez Gual * Identity.cs: Added TargetUri property 2003-04-10 Lluis Sanchez Gual * ObjRef.cs: Fixed bug #43187, based on the patch by Jean-Marc Andre 2003-04-10 Lluis Sanchez Gual * ObjRef.cs: Renamed ChannelInfoStore to ChannelInfo (match MS.NET) * RemotingServices.cs: Added method to help support Async messages. * RemotingConfiguration.cs: Implemented property ProcessID. 2003-03-24 Lluis Sanchez Gual * RemotingServices.cs: Fixed bug #39915 2003-03-20 Lluis Sanchez Gual * Identity.cs: Added support for dynamic properties. * ObjRef.cs: Removed some [MonoTODO] * TypeInfo.cs: Added support for interfaces. * RemotingServices.cs: Several fixes to support interfaces in proxies. 2003-03-15 Lluis Sanchez Gual * RemotingServices.cs: fixes bugs #39380 and #39331. 2003-02-25 Lluis Sanchez Gual * Identity.cs: Added property to check if an identity is connected (it is remotely accesible) * ObjRef.cs: Added internal helper method for getting the server type of an ObjRef. * RemotingServices.cs: Implemented Disconnect method. Added support for custom proxy creating using ProxyAttribute. Added support for activation attributes in creation of proxies. Some other minor corrections. * ServerIdentity.cs: minor corrections. 2003-02-18 Lluis Sanchez Gual * Identity.cs: Added envoy message sink. * ObjRef.cs: Implemented EnvoySink property * RemotingConfiguration.cs: now enables proxy creation for types registered as ClientActivatedType or WellKnownClientType. * RemotingServices.cs: Added support for ContextBoundObjects. Added methods for creating proxies. * ServerIdentity.cs: Added initialization of envoy sink. * EnvoyInfo.cs: Added. It is an implementation on IEnvoyInfo. 2003-02-08 Sebastien Pouliot * RemotingConfiguration.cs: Changed using to Mono.Xml for MiniParser. 2003-02-07 Patrik Torstensson * RemotingServices.cs: Always marshal an object in GetObjectData 2003-02-07 Lluis Sanchez Gual * Identity.cs: Added ObjRef attribute, that holds the objref of the object. Removed implementation of CreateObjRef. Now it is implemented in the derived classes. * ServerIdentity.cs: Added implementation of CreateObjRef. * RemotingServices.cs: Changed implementation of GetRemoteObject and GetClientIdentity. Now they only have and ObjRef as input parameter. This is the objref received from the server. Unmarshal() also checks if the objref is for a well known object. In this case, a proxy is always created, but if not, it tries to get the real object. * ObjRef.cs: Added some flags that have info for marshalling/unmarshalling. Changed behavior of IsPossibleToCAD. Now returns false. Returning true makes serialization of this ObjRef to fail in the target AD. Added method UpdateChannelInfo. 2003-02-04 Lluis Sanchez Gual * Identity.cs: created and identity class for each identity type. It is a more clear design. * ServerIdentity.cs: added. Implements identity funtionality specific to server objects * RemotingServices.cs: Modified to work with new types of identities. * RemotingConfiguration.cs: Modified to work with new types of identities. * ObjRef.cs: Added initialization of channel info in default constructor. * Identity.cs: Added support for WellKnownService objects. 2003-02-03 Gonzalo Paniagua Javier * RemotingServices.cs: (GetMethodBaseFromMethodMessage): fixed to make it also work with internal methods without MethodSignature (see ApplicationHost.cs). 2003-02-03 Patrik Torstensson * ObjRef.cs: added copy constructor and two helpers for cross appdomain message marshalling. * RemotingServices.cs: Added helper to create transparant proxy for appdomain, and register internal cross appdomain channel. 2003-01-29 Lluis Sanchez Gual * RemotingServices.cs: Added support for WellKnownService objects. * RemotingConfiguration.cs: Implemented most of methods (Configure is not working yet). * ObjRef.cs: Added initialization of channel info in default constructor. * Identity.cs: Added support for WellKnownService objects. 2003-01-28 Patrik Torstensson * ObjRef.cs: Fixed Objref marshalling flags 2003-01-24 Lluis Sanchez Gual * RemotingServices.cs: Implemented some missing methods: IsMethodOverloaded, SetObjectUriForMarshal, IsOneWay, IsObjectOutOfAppDomain, IsObjectOutOfContext, GetObjRefForProxy, GetObjectData, GetMethodBaseFromMethodMessage. * TypeInfo.cs: Added. * ObjRef.cs: Implemented serialization and added support for IRemotingTypeInfo. 2002-12-28 Lluis Sanchez Gual * SoapServices.cs: Implemented some methods 2002-12-20 Lluis Sanchez Gual * ObjRef.cs: Implementation now based on methods of RemotingServices. * RemotingServices.cs: Remoting information now kept in Identity objects. All methods adapted to work with identities. Renamed ExecuteMessage to InternalExecuteMessage. ExecuteMessage should not make a direct call to the object. * Identity.cs: added. 2002-12-11 Jaime Anguiano Olarra * RemotingConfiguration.cs: added to the CVS. 2002-11-29 Jaime Anguiano Olarra * ObjectHandle.cs: added implementation for InitializeLifetimeService * method. 2002-11-28 Gonzalo Paniagua Javier * SoapServices.cs: fix error CS3005. 2002-09-03 Dietmar Maurer * RemotingServices.cs: add an unique app_id string used to generate unique object uris. * ObjRef.cs: added serialization support 2002-08-31 Dietmar Maurer * ObjRef.cs: gather the channel date at creation time. 2002-08-20 Dietmar Maurer * RemotingServices.cs: Connect impl. 2002-08-02 Duncan Mak * ActivatedClientTypeEntry.cs: * ActivatedServiceTypeEntry.cs: * WellKnownClientTypeEntry.cs: * WellKnownServiceTypeEntry.cs: Various visibility fixes. 2002-07-31 Duncan Mak * TypeEntry.cs: * ActivatedClientTypeEntry.cs: * ActivatedServiceTypeEntry.cs: * WellKnownClientTypeEntry.cs: * WellKnownServiceTypeEntry.cs: Added all the classes derived from TypeEntry. * RemotingException.cs: * RemotingTimeoutException.cs: * ServerException.cs: Added missing exceptions. * IChannelInfo.cs: * IEnvoyInfo.cs: * IRemotingTypeInfo.cs: Added missing interfaces. 2002-07-24 Duncan Mak * LeaseState.cs: Moved to System.Runtime.Remoting.Lifetime. * SoapMethodOption.cs: * SoapOption.cs: Removed and merged into System.Runtime.Remoting.Metadata.SoapOption. 2002-07-09 Gonzalo Paniagua Javier * IObjectHandle.cs: New file. * ObjectHandle.cs: implemented constructor and Unwrap. 2002-01-05 Ravi Pratap * ObjRef.cs : Strew the MonoTODO attribute. 2001-09-02 Miguel de Icaza * ObjRef.cs: Include System.Runtime.Serialization