1 2007-05-02 Jonathan Chambers <joncham@gmail.com>
3 * RemotingConfiguration.cs: Added Configure overload for 2.0
4 with MonoTODO for security.
6 2006-12-18 Lluis Sanchez Gual <lluis@novell.com>
8 * RemotingServices.cs: FieldSetter and FieldGetter methods need
9 to be handled in a special way, since they are the only private
10 methods which can be called from a subclass.
11 In UpdateOutArgObject, removed support for StringBuilder objects,
12 now supporting only arrays, like MS.NET.
14 2006-11-22 Lluis Sanchez Gual <lluis@novell.com>
16 * RemotingServices.cs: Avoid generating urls with negative numbers.
17 When building the url for the RemoteActivationService service,
18 avoid duplicate path separator.
20 2006-10-30 Gert Driesen <drieseng@users.sourceforge.net>
22 * RemotingServices.cs: Explicitly set FormatterAssemblyStyle to Full
23 in 2.0 profile, as the default has changed from Full to Simple.
26 2006-08-23 Lluis Sanchez Gual <lluis@novell.com>
28 * ObjRef.cs: Throw a TypeLoadException exception if the referenced
29 type can't be found. That's better than a nullref.
31 2006-07-15 Jonathan Chambers <joncham@gmail.com>
33 * RemotingServices.cs: Begin implementing COM Interop.
35 2006-04-27 Robert Jordan <robertj@gmx.net>
37 * RemotingServices.cs (IsObjectOutOfAppDomain, IsObjectOutOfContext):
38 add parameter validation. Fixes bug #78164.
40 2006-04-07 Sebastien Pouliot <sebastien@ximian.com>
42 * RemotingServices.cs: Assert SerializationFormatter permissions if
43 the runtime wants to do cross-appdomain serialization (this will need
44 to be better reviewed/tested later but it fix some current issues).
46 2005-12-07 Robert Jordan <robertj@gmx.net>
48 * RemotingServices.cs: Accept the application name beeing a part of
49 the object URI. Fixes bug #76809.
51 2005-11-06 Svetlana Zholkovsky <svetlanaz@mainsoft.com>
53 * RemotingConfiguration.cs: Fix ConfigHandler.OnEndElement to handle case
54 when the configuration file contains custom providers with child elements.
55 * ServerIdentity.cs: clear _serverSink field in the DisposeServerObject method.
57 2005-10-18 Lluis Sanchez Gual <lluis@novell.com>
59 * RemotingConfiguration.cs: The value for customErrors tag must be
60 case-insensitive. Fixes bug #76466 (patch by Robert Jordan).
62 2005-10-17 Lluis Sanchez Gual <lluis@novell.com>
64 * RemotingConfiguration.cs: Rethrow catched exceptions
65 in ReadConfigFile (patch by Robert Jordan). Fixes bug #76434.
66 Properly set the application name.
68 2005-08-18 Lluis Sanchez Gual <lluis@novell.com>
70 * RemotingServices.cs: Notify marshals, unmarshals and disconnections
71 to TrackingServices. Fixes bug #75814.
73 2005-06-06 Zoltan Varga <vargaz@freemail.hu>
75 * ObjRef.cs RemotingServices.cs: Add some missing 2.0 attributes.
77 2005-05-26 Ben Maurer <bmaurer@ximian.com>
79 * InternalRemotingServices.cs: Move hashtable init to
80 cctor. Removes double checked locking and locking on typeof.
82 2005-05-17 Lluis Sanchez Gual <lluis@novell.com>
84 * ObjRef.cs: Use IsInstanceOfType instead of IsAssignableFrom
85 since GetType() may not return the correct type if the object is
88 2005-05-12 Atsushi Enomoto <atsushi@ximian.com>
90 * RemotingConfiguration.cs : MiniParser->SmallXmlParser changes.
92 2005-05-09 Lluis Sanchez Gual <lluis@novell.com>
94 * RemotingServices.cs: Fix warning.
96 2004-10-26 Lluis Sanchez Gual <lluis@novell.com>
98 * RemotingServices.cs: Added several serialization methods needed by
99 the cross app domain wrappers.
100 In GetOrCreateClientIdentity(), set the domain of the proxy if it
101 references an object in another domain.
103 2004-09-28 Lluis Sanchez Gual <lluis@novell.com>
105 * RemotingServices.cs: Allways pass the uri when calling
106 GetClientChannelSinkChain, even if it has channel data.
107 This fixes bug 66768.
109 2004-09-27 Lluis Sanchez Gual <lluis@novell.com>
111 * ServerIdentity.cs: Only set the target identity if it has not already
114 2004-09-23 Lluis Sanchez Gual <lluis@novell.com>
116 * RemotingServices.cs: Fixed wrong patch for InternalExecuteMessage.
117 The MethodBase in the message may not be the same type of the object
118 (the method can be called using an interface).
120 2004-09-22 Lluis Sanchez Gual <lluis@novell.com>
122 * RemotingServices.cs: In InternalExecute, use MethodBase instead
123 of MonoMethod, so it can be also used for running constructors.
124 * ServerIdentity.cs: Added methods for getting and setting the client
125 proxy in ClientActivatedIdentity. This is needed for CBOs, since
126 messages need to be dispatched using the proxy as "this", not the
129 2004-09-11 Ben Maurer <bmaurer@users.sourceforge.net>
131 * RemotingServices.cs: use MethodBase rather than looking
132 for the method ourselves. It has higher perf in x-ad calls.
134 2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
136 * RemotingServices.cs (IsMethodOverloaded): use the internal
137 method GetMethodsByName. It does much less work than GetMembers.
139 2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
141 * RemotingServices.cs (IsOneWay): use IsDefined rather than
142 GetCustomAttributes. It is much faster.
144 2004-07-22 Lluis Sanchez Gual <lluis@novell.com>
146 * ObjRef.cs: Fixed type check in in ObjRef constructor. The requested class
147 must be the object class or a base class. This fixes bug #61249.
149 2004-07-22 Lluis Sanchez Gual <lluis@novell.com>
151 * RemotingServices.cs: Changed GetMethodBaseFromMethodMessage so its code
152 can be reused internally. Also fixed bug when gettting a method from an
155 2004-07-02 Lluis Sanchez Gual <lluis@ximian.com>
157 * ServerIdentity.cs: When disposing an identity, detach the identity from
158 the object, so it can be safely marshalled again.
159 * RemotingServices.cs: Fixed IsObjectOutOfContext and
160 IsObjectOutOfAppDomain. In SetObjectUriForMarshal, take into account
163 2004-07-01 Lluis Sanchez Gual <lluis@ximian.com>
165 * RemotingConfiguration.cs: Avoid adding "id" and "type" as custom
166 properties of providers. This fixes bug #60934.
168 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
170 * RemotingTimeoutException.cs: added missing serialization ctor
171 * ServerException.cs: added missing serialization ctor
173 2004-06-15 Lluis Sanchez Gual <lluis@ximian.com>
175 * RemotingConfiguration.cs: Read application name from configuraation file.
177 2004-06-01 Gert Driesen <drieseng@users.sourceforge.net>
179 * RemotingServices.cs: Added missing Conditional attribute and
180 MonoTODO attribute on LogRemotingStage
182 2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
184 * RemotingConfiguration.cs: Added method for configuring chanels with the
185 delayed client load flag. Added locks for accessing internal tables.
187 2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
189 * RemotingServices.cs: In GetMethodBaseFromMethodMessage, look for
190 constructors if no method is found.
192 2004-05-07 Lluis Sanchez Gual <lluis@ximian.com>
194 * SoapServices.cs: Support encoded namespace names in
195 DecodeXmlNamespaceForClrTypeNamespace. Thanks to George Kodinov.
197 2004-04-28 Lluis Sanchez Gual <lluis@ximian.com>
199 * RemotingServices.cs: When create a ReturnMessage, provide an array with
200 all parameters, including input parameters.
202 2004-04-26 Lluis Sanchez Gual <lluis@ximian.com>
204 * ObjRef.cs: Little optimization.
206 2004-03-09 Lluis Sanchez Gual <lluis@ximian.com>
208 * RemotingServices.cs: Marshal(): If the object is a proxy, return the ObjRef
209 stored in the identity object.
211 2004-03-04 Lluis Sanchez Gual <lluis@ximian.com>
213 * Identity.cs: Removed object type from Identity, since it is hold
214 now in the IRemotingTypeInfo object.
215 * ServerIdentity.cs: Added object type.
216 * TypeInfo.cs: Added null check for the class hierarchy.
218 2004-02-17 Lluis Sanchez Gual <lluis@ximian.com>
220 * RemotingServices.cs: Client identities are registered using the full url,
221 not the object uri, so they must be unregistered using the same key.
223 2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
225 * TypeInfo.cs: The list of interfaces may be null. Added check.
227 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
229 * RemotingServices.cs: When marshalling a custom proxy, allow the creation
230 of a new identity. This fixes bug #52921.
231 * ServerIdentity.cs: Allow the creation of server identities that
232 represent a custom proxy instead of a real object.
234 2003-12-10 Lluis Sanchez Gual <lluis@ximian.com>
236 * SoapServices.cs: Little fix: correctly encode namespaces.
238 2003-12-10 Martin Willemoes Hansen <mwh@sysrq.dk>
240 * RemotingConfiguration.cs: fixed wrong attribute name
241 sponsorShipTimeOut it should be sponsorshipTimeout
243 2003-12-03 Lluis Sanchez Gual <lluis@ximian.com>
245 * SoapServices.cs: Little fix in namespace construction.
247 2003-11-28 Dick Porter <dick@ximian.com>
250 * RemotingConfiguration.cs: Use the char form of IndexOf, so that
251 the comparison is done with the Invariant culture.
253 2003-11-26 Lluis Sanchez Gual <lluis@ximian.com>
255 * InternalRemotingServices.cs: Fixed GetCachedSoapAttribute().
256 * RemotingConfiguration.cs: Implemented CustomErrorsEnabled().
257 Added support for soapInterop configuration section.
258 * SoapServices.cs: Several fixes to match MS behavior.
260 2003-11-25 Lluis Sanchez Gual <lluis@ximian.com>
262 * InternalRemotingServices.cs: Implemented GetCachedSoapAttribute().
263 * SoapServices.cs: Implemented missing methods.
264 * WellKnownClientTypeEntry.cs: Initialize object_url in constructor.
266 2003-11-24 Jackson Harper <jackson@ximian.com>
268 * ServerIdentity.cs: Get non public types, so remote objects can
269 be non public or have non public constructors.
271 2003-11-19 Lluis Sanchez Gual <lluis@ximian.com>
273 * InternalRemotingServices.cs: Added missing attributes.
275 2003-11-17 Lluis Sanchez Gual <lluis@ximian.com>
277 * InternalRemotingServices.cs: Added CLSCompliant to SetServerIdentity
278 (MethodCall is not compliant)
279 * IObjectHandle.cs: Set correct value for Guid.
281 2003-11-16 Lluis Sanchez Gual <lluis@ximian.com>
283 * IObjectHandle.cs, ObjectHandle.cs: Added missing attributes.
284 * RemotingConfiguration.cs: GetRegisteredActivatedClientTypes made public.
285 Declared CustomErrorsEnabled() method.
286 * RemotingServices.cs: Implemented GetSessionIdForMethodMessage().
287 IsAsyncMessage must be internal.
288 * InternalRemotingServices.cs: Added.
290 2003-11-13 Lluis Sanchez Gual <lluis@ximian.com>
292 * RemotingServices.cs: Add ".rem" suffix to generated uri names.
294 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
296 * RemotingConfiguration.cs: Implemented all remaining functionality.
297 * ActivatedClientTypeEntry.cs: Set the value of ObjectType in the constructor
298 * ActivatedServiceTypeEntry.cs, WellKnownClientTypeEntry.cs,
299 WellKnownServiceTypeEntry.cs: Check that the provided type is valid.
301 2003-11-11 Lluis Sanchez Gual <lluis@ximian.com>
303 * RemotingConfiguration.cs: Added initial implementation of Configure method
306 2003-11-11 Lluis Sanchez Gual <lluis@ximian.com>
308 * ActivatedClientTypeEntry.cs, ActivatedServiceTypeEntry.cs,
309 IRemotingTypeInfo.cs, RemotingServices.cs, WellKnownServiceTypeEntry.cs:
312 2003-11-01 Zoltan Varga <vargaz@freemail.hu>
314 * RemotingServices.cs (GetDomainProxy): Use the new InvokeInDomain
315 function instead of calling SetDomain.
317 2003-10-23 Lluis Sanchez Gual <lluis@ximian.com>
319 * RemotingServices.cs: Do not create an identity for an object if it
322 2003-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
324 * RemotingServices.cs: (NewUri) use Interlocked.Increment on next_id.
326 2003-10-09 Lluis Sanchez Gual <lluis@ximian.com>
328 * ObjRef.cs: Added new constructor to support CAD channel.
330 2003-10-08 Lluis Sanchez Gual <lluis@ximian.com>
332 * Identity.cs, RemotingServices.cs: Fixed memory leak. I Changed reference
333 to proxy in ClientIdentity to a WeakReference. This fixes a memory leak.
334 * RemotingServices.cs: Ignore first "/" char in uris when looking for
336 Take into account that identity now has a weak reference
339 2003-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
341 * ObjectHandle.cs: simplified and fix InitializeLifetimeService.
343 2003-09-11 Lluis Sanchez Gual <lluis@ximian.com>
345 * RemotingServices.cs: Collect value of parameters with the Out flag
346 into the return message. Also set and reset CallContext. Added method
349 2003-08-25 Lluis Sanchez Gual <lluis@ximian.com>
351 * RemotingServices.cs: Some small fixes.
353 2003-08-14 Lluis Sanchez Gual <lluis@ximian.com>
355 * ObjRef.cs: Implemented IsFromThisProcess().
356 * RemotingServices.cs: Implemented methods GetLifetimeService and
357 GetEnvoyChainForProxy. Stubbed LogRemotingStage.
359 2003-07-29 Lluis Sanchez Gual <lluis@ximian.com>
361 * RemotingServices.cs: GetObjectUri(): For client proxies, return
364 2003-07-26 Duncan Mak <duncan@ximian.com>
366 * SoapServices.cs (XmlNsForClrTypeWithNsAndAssembly):
367 Fixed typo. It's 'Ns', but 'Ms'.
369 2003-07-25 Lluis Sanchez Gual <lluis@ximian.com>
371 * RemotingServices.cs: If the type for a proxy is not available in
372 the client site, use the MarshalByRefObject type.
374 2003-07-21 Lluis Sanchez Gual <lluis@ximian.com>
376 * ServerIdentity.cs: Fixed bug #46645
378 2003-07-16 Lluis Sanchez Gual <lluis@ximian.com>
380 * Identity.cs: Added TargetUri property
382 2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
384 * ObjRef.cs: Fixed bug #43187, based on the patch by Jean-Marc Andre
386 2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
388 * ObjRef.cs: Renamed ChannelInfoStore to ChannelInfo (match MS.NET)
389 * RemotingServices.cs: Added method to help support Async messages.
390 * RemotingConfiguration.cs: Implemented property ProcessID.
392 2003-03-24 Lluis Sanchez Gual <lluis@ideary.com>
394 * RemotingServices.cs: Fixed bug #39915
396 2003-03-20 Lluis Sanchez Gual <lluis@ideary.com>
398 * Identity.cs: Added support for dynamic properties.
399 * ObjRef.cs: Removed some [MonoTODO]
400 * TypeInfo.cs: Added support for interfaces.
401 * RemotingServices.cs: Several fixes to support interfaces in proxies.
403 2003-03-15 Lluis Sanchez Gual <lluis@ideary.com>
405 * RemotingServices.cs: fixes bugs #39380 and #39331.
407 2003-02-25 Lluis Sanchez Gual <lluis@ideary.com>
409 * Identity.cs: Added property to check if an identity is connected (it is remotely accesible)
410 * ObjRef.cs: Added internal helper method for getting the server type of an ObjRef.
411 * RemotingServices.cs: Implemented Disconnect method. Added support for custom proxy
412 creating using ProxyAttribute. Added support for activation attributes in creation
413 of proxies. Some other minor corrections.
414 * ServerIdentity.cs: minor corrections.
416 2003-02-18 Lluis Sanchez Gual <lluis@ideary.com>
418 * Identity.cs: Added envoy message sink.
419 * ObjRef.cs: Implemented EnvoySink property
420 * RemotingConfiguration.cs: now enables proxy creation for types registered
421 as ClientActivatedType or WellKnownClientType.
422 * RemotingServices.cs: Added support for ContextBoundObjects.
423 Added methods for creating proxies.
424 * ServerIdentity.cs: Added initialization of envoy sink.
425 * EnvoyInfo.cs: Added. It is an implementation on IEnvoyInfo.
427 2003-02-08 Sebastien Pouliot <spouliot@videotron.ca>
429 * RemotingConfiguration.cs: Changed using to Mono.Xml for MiniParser.
431 2003-02-07 Patrik Torstensson
433 * RemotingServices.cs: Always marshal an object in GetObjectData
435 2003-02-07 Lluis Sanchez Gual <lluis@ideary.com>
437 * Identity.cs: Added ObjRef attribute, that holds the objref of the object.
438 Removed implementation of CreateObjRef. Now it is implemented in the derived classes.
439 * ServerIdentity.cs: Added implementation of CreateObjRef.
440 * RemotingServices.cs: Changed implementation of GetRemoteObject and GetClientIdentity.
441 Now they only have and ObjRef as input parameter. This is the objref received from
442 the server. Unmarshal() also checks if the objref is for a well known object.
443 In this case, a proxy is always created, but if not, it tries to get the real object.
444 * ObjRef.cs: Added some flags that have info for marshalling/unmarshalling.
445 Changed behavior of IsPossibleToCAD. Now returns false. Returning true makes serialization
446 of this ObjRef to fail in the target AD. Added method UpdateChannelInfo.
448 2003-02-04 Lluis Sanchez Gual <lluis@ideary.com>
450 * Identity.cs: created and identity class for each identity type. It is a more clear design.
451 * ServerIdentity.cs: added. Implements identity funtionality specific to server objects
452 * RemotingServices.cs: Modified to work with new types of identities.
453 * RemotingConfiguration.cs: Modified to work with new types of identities.
454 * ObjRef.cs: Added initialization of channel info in default constructor.
455 * Identity.cs: Added support for WellKnownService objects.
457 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
459 * RemotingServices.cs:
460 (GetMethodBaseFromMethodMessage): fixed to make it also work with
461 internal methods without MethodSignature (see ApplicationHost.cs).
463 2003-02-03 Patrik Torstensson
465 * ObjRef.cs: added copy constructor and two helpers for cross
466 appdomain message marshalling.
467 * RemotingServices.cs: Added helper to create transparant proxy for appdomain, and
468 register internal cross appdomain channel.
470 2003-01-29 Lluis Sanchez Gual <lluis@ideary.com>
472 * RemotingServices.cs: Added support for WellKnownService objects.
473 * RemotingConfiguration.cs: Implemented most of methods (Configure is not working yet).
474 * ObjRef.cs: Added initialization of channel info in default constructor.
475 * Identity.cs: Added support for WellKnownService objects.
477 2003-01-28 Patrik Torstensson
479 * ObjRef.cs: Fixed Objref marshalling flags
481 2003-01-24 Lluis Sanchez Gual <lluis@ideary.com>
483 * RemotingServices.cs: Implemented some missing methods: IsMethodOverloaded,
484 SetObjectUriForMarshal, IsOneWay, IsObjectOutOfAppDomain,
485 IsObjectOutOfContext, GetObjRefForProxy, GetObjectData,
486 GetMethodBaseFromMethodMessage.
487 * TypeInfo.cs: Added.
488 * ObjRef.cs: Implemented serialization and added support for IRemotingTypeInfo.
490 2002-12-28 Lluis Sanchez Gual <lluis@ideary.com>
492 * SoapServices.cs: Implemented some methods
494 2002-12-20 Lluis Sanchez Gual <lluis@ideary.com>
496 * ObjRef.cs: Implementation now based on methods of RemotingServices.
497 * RemotingServices.cs: Remoting information now kept in Identity objects.
498 All methods adapted to work with identities.
499 Renamed ExecuteMessage to InternalExecuteMessage. ExecuteMessage should
500 not make a direct call to the object.
501 * Identity.cs: added.
503 2002-12-11 Jaime Anguiano Olarra <jaime@gnome.org>
505 * RemotingConfiguration.cs: added to the CVS.
507 2002-11-29 Jaime Anguiano Olarra <jaime@gnome.org>
509 * ObjectHandle.cs: added implementation for InitializeLifetimeService
513 2002-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
515 * SoapServices.cs: fix error CS3005.
517 2002-09-03 Dietmar Maurer <dietmar@ximian.com>
519 * RemotingServices.cs: add an unique app_id string used to generate
522 * ObjRef.cs: added serialization support
524 2002-08-31 Dietmar Maurer <dietmar@ximian.com>
526 * ObjRef.cs: gather the channel date at creation time.
528 2002-08-20 Dietmar Maurer <dietmar@ximian.com>
530 * RemotingServices.cs: Connect impl.
532 2002-08-02 Duncan Mak <duncan@ximian.com>
534 * ActivatedClientTypeEntry.cs:
535 * ActivatedServiceTypeEntry.cs:
536 * WellKnownClientTypeEntry.cs:
537 * WellKnownServiceTypeEntry.cs: Various visibility fixes.
539 2002-07-31 Duncan Mak <duncan@ximian.com>
542 * ActivatedClientTypeEntry.cs:
543 * ActivatedServiceTypeEntry.cs:
544 * WellKnownClientTypeEntry.cs:
545 * WellKnownServiceTypeEntry.cs: Added all the classes derived from TypeEntry.
547 * RemotingException.cs:
548 * RemotingTimeoutException.cs:
549 * ServerException.cs: Added missing exceptions.
553 * IRemotingTypeInfo.cs: Added missing interfaces.
555 2002-07-24 Duncan Mak <duncan@ximian.com>
557 * LeaseState.cs: Moved to System.Runtime.Remoting.Lifetime.
559 * SoapMethodOption.cs:
560 * SoapOption.cs: Removed and merged into System.Runtime.Remoting.Metadata.SoapOption.
562 2002-07-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
564 * IObjectHandle.cs: New file.
565 * ObjectHandle.cs: implemented constructor and Unwrap.
567 2002-01-05 Ravi Pratap <ravi@ximian.com>
569 * ObjRef.cs : Strew the MonoTODO attribute.
571 2001-09-02 Miguel de Icaza <miguel@ximian.com>
573 * ObjRef.cs: Include System.Runtime.Serialization