1 2009-04-27 Atsushi Enomoto <atsushi@ximian.com>
3 * ChannelManagerBase.cs : implement Open/CloseTimeout correctly.
5 2009-04-23 Atsushi Enomoto <atsushi@ximian.com>
7 * BinaryMessageEncoder.cs : use quotas in binding element.
8 Implement WriteMessage().
10 2009-04-22 Atsushi Enomoto <atsushi@ximian.com>
12 * PeerCustomResolverBindingElement.cs : do initialize field.
14 2009-04-21 Atsushi Enomoto <atsushi@ximian.com>
16 * PeerCustomResolverBindingElement.cs :
17 implement full custom resolver.
19 2009-04-21 Atsushi Enomoto <atsushi@ximian.com>
21 * PeerDuplexChannel.cs, PeerChannelListener.cs,
22 PeerOutputChannel.cs, PeerCustomResolverBindingElement.cs,
23 PeerChannelFactory.cs : ongoing p2p channel implementation.
25 2009-04-21 Atsushi Enomoto <atsushi@ximian.com>
27 * PnrpPeerResolverBindingElement.cs : sync with PeerResolver changes.
29 2009-04-21 Atsushi Enomoto <atsushi@ximian.com>
31 * BinaryMessageEncodingBindingElement.cs, ChannelBase.cs,
32 ChannelFactoryBase.cs, WindowsStreamSecurityBindingElement.cs :
33 implement GetProperty<T>(). Return documented objects or null.
35 2009-04-20 Atsushi Enomoto <atsushi@ximian.com>
37 * PeerChannelFactory.cs, PeerChannelListener.cs,
38 PeerCustomResolverBindingElement.cs, PeerDuplexChannel.cs
39 PeerInputChannel.cs, PeerOutputChannel.cs :
40 new; ongoing peer transport implementation.
41 * DuplexSessionChannelBase.cs, InputChannelBase.cs
42 MsmqOutputChannel.cs, OutputChannelBase.cs,
43 PeerResolverBindingElement.cs, PeerTransportBindingElement.cs,
44 PnrpPeerResolverBindingElement.cs, TcpDuplexSessionChannel.cs :
45 several internal changes (either required or for simplification)
46 for ongoing peer transport implementation.
48 2009-04-08 Atsushi Enomoto <atsushi@ximian.com>
50 * PeerTransportBindingElement.cs : ListenIPAddress is IPAddress.
52 2009-04-07 Atsushi Enomoto <atsushi@ximian.com>
54 * TcpTransportBindingElement.cs : check build-ability before
55 actually building channels.
56 * ConnectionOrientedTransportBindingElement.cs : fixed build-ability
57 conditions according to MSDN.
59 2009-03-05 Atsushi Enomoto <atsushi@ximian.com>
61 * MessageHeader.cs, MessageHeaders.cs, MessageImpl.cs :
62 handle headers in SL2. Slightly changed 3.0 code too.
64 2009-03-04 Atsushi Enomoto <atsushi@ximian.com>
66 * HttpRequestChannel.cs : use cross domain access manager.
68 2009-02-27 Atsushi Enomoto <atsushi@ximian.com>
70 * Message.cs : (in CreateBufferedCopy) do not pass the entire
71 message as BodyWriter.
72 (in GetReaderAtBodyContents) just write body contents.
73 * MessageImpl.cs : do not try to read body at ctor (fixed tons
75 Add some state check in GetReaderAtBodyContents().
76 * XmlReaderBodyWriter.cs : avoid possible extra xmldecl onto output.
78 2009-02-18 Atsushi Enomoto <atsushi@ximian.com>
80 * Message.cs : do not forget to flush.
81 * HttpRequestChannel.cs : give more exact error info.
83 2009-02-18 Atsushi Enomoto <atsushi@ximian.com>
85 * Message.cs, MessageBufferImpl.cs, XmlReaderBodyWriter.cs :
86 make buffered copy in ML2 really buffered.
88 2009-02-12 Atsushi Enomoto <atsushi@ximian.com>
90 * Message.cs : if there is no header item to write, do not write
93 2009-01-22 Alan McGovern <amcgovern@novell.com>
95 * MessageHeaders.cs : List<T>.RemoveAll(Predicate<T>) doesn't exist in Silverlight.
96 Rewrite to avoid usage of it.
98 2009-01-14 Atsushi Enomoto <atsushi@ximian.com>
100 * ChannelParameterCollection.cs : implement, rather than NIE.
102 2008-05-22 Noam Lampert <noaml@mainsoft.com>
104 * MessageFault.cs: Correctly serialize ExceptionDetails. Expose SimpleMessageFault to allow
105 internal users to know the type of the detail.
107 2008-05-20 Noam Lampert <noaml@mainsoft.com>
109 * Message.c: Use private setter for state private variable to ease debugging.
110 Modify ToString not to change the state, as it is called quite often by VS debugger
112 2008-04-21 Roei Erez <roeie@mainsoft.com>
114 * HttpChannleManager: Fix for multithreaded use.
115 * HttpReplyChannel: Fix crash during sutdown.
117 2008-04-17 Igor Zelmanovich <igorz@mainsoft.com>
119 * HttpChannleManager: ensure trailing slash in uri.
121 2008-04-17 Vladimir Krasnov <vladimirk@mainsoft.com>
123 * added: HttpChannleManager,
124 * HttpChannelListener: added use of HttpChannelManager
126 2008-04-17 Vladimir Krasnov <vladimirk@mainsoft.com>
128 * MessageEncodingBindingElement.cs: fixed ctor
130 2008-04-17 Vladimir Krasnov <vladimirk@mainsoft.com>
132 * XmlReaderBodyWriter.cs: fixed ctor, skip xml declaration
134 2008-04-17 Vladimir Krasnov <vladimirk@mainsoft.com>
136 * HttpReplyChannel.cs: fixed TryReceiveRequest, fix message header To
138 2008-04-17 Vladimir Krasnov <vladimirk@mainsoft.com>
140 * MessageFault.cs: fixed CreateFault11, implemented "detail"
142 2008-04-17 Noam Lampert <noaml@mainsoft.com>
144 * HttpReplyChannel.cs: fix API - Fix crash during service shutdown.
146 2008-04-13 Igor Zelmanovich <igorz@mainsoft.com>
148 * BindingElementCollection.cs: fix API - .ctor's signature.
150 2008-04-10 Eyal Alaluf <eyala@mainsoft.com>
152 * XmlSerializerBodyWriter.cs: Removed.
154 2008-03-25 Vladimir Krasnov <vladimirk@mainsoft.com>
156 * MessageFault.cs: fixed WriteReason, .net XmlWriter compatible
158 2008-02-20 Atsushi Enomoto <atsushi@ximian.com>
160 * DuplexSessionChannelBase.cs : made it non-session (more reusable).
161 * TcpChannelFactory.cs, TcpChannelListener.cs :
162 unify factory and listener into TcpChannelInfo for use in
163 TCP channel implementation. Do not store stream in the listener.
164 Factory now uses BinaryMessageEncoder.
165 * TcpDuplexSessionChannel.cs : changes explained above, and now it
166 holds TcpClient that the listener has accepted.
168 tcp-transport-binding-element sample now communicates (though
169 only when both sides are mono: there seems binary mismatch).
171 2008-02-20 Atsushi Enomoto <atsushi@ximian.com>
173 * TcpTransportBindingElement.cs, TcpConnectionPoolSettings.cs :
174 clone connection pool settings too.
175 * NamedPipetransportBindingElement.cs,
176 NamedPipeConnectionPoolSettings.cs : let's clean them up too (not
177 being likely implemented though).
179 2008-02-20 Atsushi Enomoto <atsushi@ximian.com>
181 * ConnectionOrientedTransportBindingElement.cs,
182 TcpTransportBindingElement.cs : some API updates.
183 Initialize default values.
184 * TcpConnectionPoolSettings.cs : new file.
186 2008-02-18 Atsushi Enomoto <atsushi@ximian.com>
188 * ServiceHostParser.cs, SvcHttpHandlerFactory.cs, SvcHttpHandler.cs:
189 added support for "factory" attribute.
191 2008-02-15 Atsushi Enomoto <atsushi@ximian.com>
193 * HttpRequestContent.cs : consider HttpResponseMessageProperty.
195 2008-02-15 Atsushi Enomoto <atsushi@ximian.com>
197 * HttpRequestChannel.cs : pass response ContentType to ReadMessage().
199 2008-02-15 Atsushi Enomoto <atsushi@ximian.com>
201 * HttpRequestChannel.cs : create WebRequest against To message header
203 Consider HttpRequestMessageProperty.
204 Do not output body when suppressed or the method is GET.
206 2008-02-15 Atsushi Enomoto <atsushi@ximian.com>
208 * HttpChannelListener.cs : BindingContext may not have listenUri
211 2008-02-08 Atsushi Enomoto <atsushi@ximian.com>
213 * BindingContext.cs : RemainingBindingElements is not just a dummy
214 collection but is actually user-controlled.
216 2008-02-08 Atsushi Enomoto <atsushi@ximian.com>
218 * TcpChannelFactory.cs, TcpChannelListener.cs,
219 HttpChannelFactory.cs, HttpChannelListener.cs,
220 MsmqChannelFactory.cs, MsmqChannelListener.cs,
221 TextMessageEncodingBindingElement.cs,
222 BinaryMessageEncodingBindingElement.cs,
223 MtomMessageEncodingBindingElement.cs :
224 message encoder should be retrieved only through public API.
225 * BindingContext.cs : so my old guess was wrong.
227 See also: http://blogs.msdn.com/drnick/archive/2006/05/10/594134.aspx
229 2008-02-05 Atsushi Enomoto <atsushi@ximian.com>
231 * HttpTransportBindingElement.cs : implemented copy constructor.
233 2007-08-20 Atsushi Enomoto <atsushi@ximian.com>
235 * HttpRequestChannel.cs, HttpReplyChannel.cs : treat SOAPAction HTTP
236 header when AddressingVersion is None.
238 2007-08-20 Atsushi Enomoto <atsushi@ximian.com>
240 * MessageHeaders.cs : AddressingVersion.None rejects some WSA
243 2007-08-19 Atsushi Enomoto <atsushi@ximian.com>
245 * OneWayBindingElementImporter.cs
246 CompositeDuplexBindingElementImporter.cs : new files.
248 2007-08-17 Atsushi Enomoto <atsushi@ximian.com>
250 * MessageHeaders.cs : due to the DataContractSerializer.ReadObject()
251 semantic change, its bool parameter must be false, not true.
253 2007-07-13 Atsushi Enomoto <atsushi@ximian.com>
255 * InputChannelBase.cs, MsmqChannelListener.cs, MsmqInputChannel.cs :
256 new files. Msmq transport listener Implementation.
257 * MsmqOutputChannel.cs : implemented Send(). Not sure if it works
258 (wait for System.Messaging impl.)
259 * HttpReplyChannel.cs : added comment
261 2007-07-06 Atsushi Enomoto <atsushi@ximian.com>
263 * MsmqChannelFactory.cs MsmqOutputChannel.cs OutputChannelBase.cs :
264 new files. internal stuff for msmq channel.
265 * BinaryMessageEncoder.cs : added another .ctor().
266 * MsmqTransportBindingElement.cs :
267 implemented [Can]BuildChannelFactory().
269 2007-07-06 Atsushi Enomoto <atsushi@ximian.com>
271 * MsmqBindingElementBase.cs MsmqTransportBindingElement.cs :
272 initialize some fields.
274 2007-07-05 Atsushi Enomoto <atsushi@ximian.com>
276 * MsmqBindingElementBase.cs MsmqMessageProperty.cs
277 MsmqTransportBindingElement.cs ITransactedBindingElement.cs :
278 couple of msmq stubs.
280 2007-04-02 Atsushi Enomoto <atsushi@ximian.com>
282 * SecureMessageGenerator.cs : SecurityContextToken support (though
283 it is still regarded as invalid by WCF).
285 2007-03-13 Atsushi Enomoto <atsushi@ximian.com>
287 * WSSecurityMessageHeader.cs, SecureMessageGenerator.cs :
288 make header.Contents.Add() more strict.
289 Use HasAsymmetricKey to determine whether to use asymmetric algorithm
291 Added some hack to allow ssl token external mode.
292 Commented out such lines that always premised asymmtric key.
294 2007-03-08 Atsushi Enomoto <atsushi@ximian.com>
296 * TransactionFlowBindingElement.cs : forgot necessary Clone().
298 2007-03-08 Atsushi Enomoto <atsushi@ximian.com>
300 * MessageSecurityBindingSupport.cs : support check to create
301 authenticator is now done in both initiator/recipient sides.
302 * SecurityRequestContext.cs : don't encrypt WS-Trust RSTR.
304 2007-03-07 Atsushi Enomoto <atsushi@ximian.com>
306 * MessageSecurityBindingSupport.cs : for now, comment out the code
307 that makes authenticator creation optional.
308 * SecurityRequestContext.cs : don't decrypt message when it is
309 WS-Trust messages. Also, do not secure SOAP Fault (it is likely
311 * SecurityChannelListener.cs : GetProperty<T>() now returns
312 MessageSecurityBindingSupport when requested. It is used by
313 EndpointDispatcher to check if it supports WS-Trust negotiation.
314 * ChannelListenerBase.cs :
315 removed extra TODO and field. Implemented GetProperty<T>().
316 * Message.cs : In CreateMessage() for SOAP Fault, create
317 SimpleMessage with IsFault = true.
319 2007-03-07 Atsushi Enomoto <atsushi@ximian.com>
321 * SecurityRequestContext.cs : try to reply fault with the inner
322 channel when an error occurred internally.
323 * FaultConverter.cs : implemented based on OperationContext (at normal
324 state it does not seem to create messages, so I implemented it this
327 2007-03-07 Atsushi Enomoto <atsushi@ximian.com>
329 * TransportBindingElement.cs : implemented GetProperty<T>().
330 * TransactionFlowBindingElement.cs : on building factory or listener,
331 reject channel types that cannot build.
332 * SecurityBindingElement.cs : added some TODO comments.
333 * HttpTransportBindingElement.cs : GetProperty<T>() should rather
334 delegate to base, not BindingContext.
335 * SecurityRequestContext.cs : somewhat late decryption.
337 2007-03-06 Atsushi Enomoto <atsushi@ximian.com>
339 * MessageSecurityBindingSupport.cs,
340 AsymmetricSecurityBindingElement.cs,
341 SymmetricSecurityBindingElement.cs :
342 renamed *SecurityBindingElementSupport to *SecurityCapabilities and
343 implemented ISecurityCapabilities on them. Now those binding
344 elements support GetProperty<ISecurityCapabilities>().
346 2007-03-05 Atsushi Enomoto <atsushi@ximian.com>
348 * SecurityBindingElement.cs : SetIssuerBindingContextIfRequired()
349 will work only for predefined parameter types.
351 2007-03-01 Atsushi Enomoto <atsushi@ximian.com>
353 * MessageSecurityBindingSupport.cs :
354 Set proper MessageDirection to the requirement after creation.
355 split CreateTokenAuthenticator() as MessageDirection is different.
356 Removed extra creation of requirement.
358 2007-03-01 Atsushi Enomoto <atsushi@ximian.com>
360 * MessageSecurityBindingSupport.cs : token authenticator is not
361 always created on channel-opening stage.
362 * SecurityBindingElement.cs : use SslSecurityTokenParameters for
363 Sslnego binding factory method.
365 2007-02-28 Atsushi Enomoto <atsushi@ximian.com>
367 * SecureMessageGenerator.cs : inconsistent ReferenceList has caused
368 signature velification failure.
370 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
372 * SecureMessageGenerator.cs : encrypt signature confirmations only
373 when they are required.
375 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
377 * SecureMessageGenerator.cs : SignatureConfirmation must be encrypted
378 when [Signature Protection is true i.e. when we use
379 SignBeforeEncryptAndEncryptSignature.
381 With this change finally samplesvc.cs/samplecli.cs became
384 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
386 * SecureMessageDecryptor.cs : signature verification was not done
387 for endorsing supporting tokens.
388 * SecureMessageGenerator.cs : moved SignatureConfirmation position
389 in the security header. Don't output empty ReferenceList.
391 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
393 * SecureMessageGenerator.cs : signingToken was added before being
394 initialized and thus caused NRE.
396 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
398 * WSSecurityMessageHeader.cs, SecureMessageDecryptor.cs,
399 SecureMessageGenerator.cs : use SHA1 instead of HMACSHA1. Now we
400 don't need workaround for symmetric key restoration.
402 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
404 * WSSecurityMessageHeader.cs, SecureMessageDecryptor.cs,
405 SecureMessageGenerator.cs :
406 Avoid extra reference search from the request's ReferenceList.
407 create HMACSHA1 always with the key to compute hash (I'm not sure
408 it is correct; it is rather to adjust all hash consistent.)
410 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
412 * SecureMessageDecryptor.cs : verify that endorsing supporting tokens
413 actually endorsed the primary signature.
414 * SecureMessageGenerator.cs : implemented endorsing of the primary
415 signature. So, now supporting tokens are fully implemented.
417 2007-02-27 Atsushi Enomoto <atsushi@ximian.com>
419 * MessageSecurityBindingSupport.cs : so, those supporting tokens are
420 totally signing tokens.
421 * SecureMessageGenerator.cs : Endorsing tokens should also be
422 included in the message. They are just not signed.
424 2007-02-26 Atsushi Enomoto <atsushi@ximian.com>
426 * SecureMessageGenerator.cs : support signing and encryption of
427 supporting tokens. Some required refactory to do it.
428 * MessageSecurityBindingSupport.cs : added EncryptedData member.
430 2007-02-26 Atsushi Enomoto <atsushi@ximian.com>
432 * SecureMessageDecryptor.cs : fix exception message.
433 * WSSecurityMessageHeader.cs, WSSignedXml.cs, WSEncryptedXml.cs :
434 XmlNamespaceManager is not required for GetIdElement().
436 2007-02-22 Atsushi Enomoto <atsushi@ximian.com>
438 * SecureMessageDecryptor.cs, WSSecurityMessageHeader.cs :
439 moved decryption part from former file to latter file, to reuse
440 SignedXml instance (though now I doubt how it actually was good)
441 which in turn required to replace EncryptedData in
442 WSSecurityMessageHeader with decrypted one.
443 * WSEncryptedXml.cs : similar to WSSignedXml.cs, to handle wsu:Id.
445 2007-02-21 Atsushi Enomoto <atsushi@ximian.com>
447 * SecureMessageGenerator.cs : when we create DerivedKeyToken, those
448 EncryptedData should contain KeyInfo as it is not obvious which key
449 is used there. .net<->mono DerivedKeyToken introp is done.
450 * SecureMessageDecryptor.cs : check derived key requirement.
451 Reduce dom-dependent parts.
453 2007-02-21 Atsushi Enomoto <atsushi@ximian.com>
455 * WSSecurityMessageHeader.cs : ReferenceList needs to be bound to
456 the related DerivedKeyToken (if any).
457 * SecureMessageGenerator.cs : largely done with DerivedKeyToken
458 support. Some refactoring to distinguish deried-token-related
460 * SecureMessageDecryptor.cs : removed its own support for derived
461 key tokens. Now it fully works with DerivedKeySecurityToken.
463 2007-02-21 Atsushi Enomoto <atsushi@ximian.com>
465 * WSSecurityMessageHeader.cs, SecureMessageDecryptor.cs,
466 SecureMessageDecryptor.cs :
467 Implemented increment token reading in o:Security, as
468 DerivedKeyToken could reference to existing wrapped key.
469 Removed WsscDerivedKeyToken and all relevant code.
470 * SecureMessageGenerator.cs : replaced WsscDerivedKeyToken with
471 DerivedKeySecurityToken.
473 2007-02-16 Atsushi Enomoto <atsushi@ximian.com>
475 * SecureMessageGenerator.cs : it was setting security tokens into
476 incorrect SecurityMessageProperty.
477 Use correct WrappedKeySecurityToken for EncryptedKeySHA1.
478 Now it uses SecurityRequestContext instead of just primary key.
479 * SecureMessageDecryptor.cs : removed extra lines. Limit workarounds
480 to symmetric reply decryption, which is the only trouble case.
481 Do not create another SignedXml.
482 * WSSecurityMessageHeader.cs : SignedXml processing changes above.
484 2007-02-15 Atsushi Enomoto <atsushi@ximian.com>
486 * SecureMessageDecryptor.cs : Now it uses union token resolver and
487 the resolver works with in-progress token reading in o:Security.
488 * WSSecurityMessageHeader.cs : now it does not read EncryptedKey
489 as EncryptedKeyIdentifierClause. It is rather a SecurityToken.
490 * SecureMessageGenerator.cs : cosmetic refactoring.
492 2007-02-14 Atsushi Enomoto <atsushi@ximian.com>
494 * WSSecurityMessageHeader.cs : read EncryptedKeyIdentifierClause
495 instead of EncryptedKey.
497 2007-02-13 Atsushi Enomoto <atsushi@ximian.com>
499 * MessageSecurityBindingSupport.cs : SigningToken and EncryptionToken
500 should not be always prepared at channel Open(). It also caused
501 that extra token requirements.
502 * SecureMessageGenerator.cs : use correct key clause for encryption.
503 * SecureMessageDecryptor.cs : reduce extra key acquisition.
505 2007-02-06 Atsushi Enomoto <atsushi@ximian.com>
507 * MessageSecurityBindingSupport.cs : added CreateTokenAuthenticator()
508 for supporting 'supporting tokens' .
509 * SecureMessageGenerator.cs : Supporting token creation is done only
510 at initiator (not sure if it is supposed that, but for now it is).
511 Removed extraneous CollectSupportingTokens().
512 * SecureMessageDecryptor.cs : implemented supporting token
513 authentication (partly). "Signed" supporting tokens are expected
516 2007-02-06 Atsushi Enomoto <atsushi@ximian.com>
518 * SecureMessageGenerator.cs :
519 make SignBeforeEncryptAndEncryptSignature working.
521 2007-02-06 Atsushi Enomoto <atsushi@ximian.com>
523 * SecureMessageGenerator.cs : EncryptedKeySHA1 needs key hash, not
524 the key itself. ProtectionToken is WrappedKey.
525 * SecureMessageDecryptor.cs : now it is internal encrypted key clause,
526 not EncryptedKeyIdentifierClause which is not for embedded key.
527 * MessageProperties.cs : Fixed copy direction in CopyProperties().
529 2007-02-05 Atsushi Enomoto <atsushi@ximian.com>
531 * MessageSecurityBindingSupport.cs : added DefaultKeyWrapAlgorithm
532 to switch asymmetric and symmetric. Not used yet.
533 * SecurityRequestChannel.cs : now it pass the request security
534 property to reply receiver so that it could use the primary key
535 used at request phase.
536 * SecurityRequestContext.cs : now it pass the context itself to
537 reply sender so that it could embed related MessageID.
538 * SecureMessageGenerator.cs : ongoing changes to support symmetric
539 binding element. Add RelatesTo output and remove MessageID when
540 replying to the sender. Added some hacks to get symmetric binding
542 * SecureMessageDecryptor.cs : ditto. Handle embedded encryption key
543 in SecurityTokenReference (it also involved existing encrypted key
544 retrieval). In reply receiver, reuse the key that was used at
545 request phase. It needs significant token resolution refactoring.
547 2007-02-02 Atsushi Enomoto <atsushi@ximian.com>
549 * MessageSecurityBindingSupport.cs : cosmetic refactoring.
550 * SecureMessageDecryptor.cs : store token and its authentication
551 policies into the security property, and reuse it on reply.
552 Some code refactoring; there is at most one o:Security to solve at
553 one endpoint (depends on Actor). Some attempt to use correct
554 token parameters (but for now I have only samples that use x509).
555 * SecureMessageGenerator.cs : For replying message, use initiator's
556 signing token as the encryption token. Simply reuse security
557 property from the input message.
559 I have some nasty workaround at decryptor for initiator that could
560 not retrieve decryption key.
562 2007-02-02 Atsushi Enomoto <atsushi@ximian.com>
564 * SecureMessageGenerator.cs, SecurityChannelListener.cs,
565 SecurityRequestContext.cs, MessageSecurityBindingSupport.cs:
566 several refactoring on token acquisition. Large part of
567 MessageSecurityBindingSupport code is unified.
569 2007-02-02 Atsushi Enomoto <atsushi@ximian.com>
571 * MessageProperties.cs : Security property should be one of the items.
572 Actually many other properties should be similar as well.
573 * MessageImpl.cs, MessageBufferImpl.cs, Message.cs :
574 when copying a message, copy properties as well.
575 * SecurityRequestContext.cs : on replying, pass input
576 SecurityMessageProperty to the security generator.
577 * SecureMessageGenerator.cs : both of above, for SignatureConfirmation
579 * WSSecurityMessageHeader.cs : fixed lazy .ctor() that did nothing.
581 2007-02-01 Atsushi Enomoto <atsushi@ximian.com>
584 MessageHeader.cs, Message.cs, WSSecurityMessageHeader.cs,
585 SecureMessageDecryptor.cs, SecureMessageGenerator.cs:
586 use new WSSignedXml instead of SignedXml, and remove coexisting
587 Id and wsu:Id. Now we can live only with wsu:Id and therefore
588 - our reply messages could be consumed by .NET, and
589 - .NET signature could be verified.
591 2007-02-01 Atsushi Enomoto <atsushi@ximian.com>
593 * SecureMessageDecryptor.cs : The signing key must be passed as
594 CheckSignature() argument, not SigningKey.
596 2007-01-31 Atsushi Enomoto <atsushi@ximian.com>
598 * MessageImpl.cs : don't read attribute after ReadStartElement().
600 2007-01-31 Atsushi Enomoto <atsushi@ximian.com>
602 * MessageSecurityBindingSupport.cs : some Release() refactoring.
603 * SecureMessageGenerator.cs : use correct signing key clause for
604 SecurityTokenReferenceKeyInfo to be serialized.
605 * SecureMessageDecryptor.cs : now it can try to parse signature.
607 2007-01-31 Atsushi Enomoto <atsushi@ximian.com>
609 Ongoing changes to support signature confirmation
610 * SecureMessageGenerator.cs :
611 Don't output ReplyTo onto reply message.
612 Write SignatureConfirmation if needed.
613 * SecureMessageDecryptor.cs :
614 Some refactoring for header cunsumption. Added commented-out
615 signature verification part (not working yet, on client side due
616 to incorrect reply from service and insufficient clause reader).
617 * WSSecurityMessageHeader.cs :
618 Added SignatureConfirmation support.
619 KeyInfoClause for o:SecurityTokenReference should be replaced with
620 SecurityTokenReferenceKeyInfo.
622 2007-01-29 Atsushi Enomoto <atsushi@ximian.com>
624 * SecureMessageGenerator.cs : support Timestamp signature.
625 Removed unused code, and extra argument in CreateReference().
626 * WSSecurityMessageHeader.cs : Timestamp also needs Id for SignedXml.
628 2007-01-29 Atsushi Enomoto <atsushi@ximian.com>
630 * SecureMessageGenerator.cs :
631 Several fixes to make asymmetric binding working:
632 - Differentiate signing and encryption token in several areas.
633 - Fixed signing keyinfo.
635 Added initial SecurityMessageProperty handling, not sure if it is
636 appropriate here though.
637 * HttpRequestChannel.cs : (some debugging lines)
639 2007-01-26 Atsushi Enomoto <atsushi@ximian.com>
641 Woohoo! Here is a very basic WS-Security compliant message which could
642 be allowed by Indigo.
643 * MessageHeader.cs : added Id support for writing.
644 * Message.cs : added internal BodyId for signature reference.
645 * MessageImpl.cs : write Body Id if required.
646 * SecureMessageGenerator.cs : Before signing, the target elements must
647 be given wsu:Id. Since I still use System.Security.dll, I need some
648 trick for signing (I give both Id and wsu:Id, former to sign and
649 latter to be consumed). Maybe I will have to replace xmldsig/xmlenc
650 implementation later. Now singning mechanism works except for
651 wsu:Timestamp (which is kind of mandatory).
653 I can's still consume replies from Indigo but it's a big progress :)
655 2007-01-26 Atsushi Enomoto <atsushi@ximian.com>
657 * MessageHeaderInfo.cs : added internal Id.
658 * MessageHeader.cs : read and write wsu:Id.
659 * Message.cs : output wsu namespace if Id exists in any header.
660 * HttpReplyChannel.cs : (some debugging lines.)
661 * SecureMessageDecryptor.cs : (remove debugging lines.)
662 * MessageImpl.cs : removed obsolete code.
663 * WSSecurityMessageHeader.cs : output "o" prefix.
664 * SecureMessageGenerator.cs : replaced XmlElement-based header
665 signing with MessageHeader-based signing, to support Id correctly.
667 2007-01-15 Atsushi Enomoto <atsushi@ximian.com>
669 * SecureMessageGenerator.cs : some more refactoring and code comments.
670 * MessageSecurityUtility.cs : made decryptor into an instance class,
671 like I've done for SecureMessageGenerator.
672 * SecurityRequestContext.cs, SecurityRequestChannel.cs :
673 dependent changes for above.
675 2007-01-12 Atsushi Enomoto <atsushi@ximian.com>
677 * SecureMessageGenerator.cs : fixed derived keysize. derived key was
678 causing NRE due to the lack of token reference.
679 No need to pass doc to SignedXml.ctor() anymore.
680 Moved ReferenceList before the signature(s).
682 2007-01-12 Atsushi Enomoto <atsushi@ximian.com>
684 * SecureMessageGenerator.cs : add wsu:Timestamp to signing target.
685 Moved signing key generation code to non-HMACSHA1 signing part.
686 Don't try to sign wss:Security.
687 Pass document itself to SignedXml.ctor().
688 Use temporary DataObjects to avoid adding Ids (not sure what is the
689 expected processing yet).
690 * WSSecurityMessageHeader.cs : to support timestamp signing, add
691 WriteTo() method in WsuTimestamp.
693 2007-01-12 Atsushi Enomoto <atsushi@ximian.com>
695 * SecureMessageGenerator.cs : wrong key was used for signing.
696 Omit KeyInfo for now - it seems that .net (sometimes?) omits it.
698 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
700 * SecureMessageGenerator.cs :
701 Now ID generation process does not modify input message.
702 Moved derived key generation part into (virtual) signing loop.
703 MessagePartSpecification support for signing is done.
705 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
707 * SecureMessageGenerator.cs : some reordering to handle signing and
708 encryption with supporting tokens. Fixed XPath query bug for
709 soap header contents (we want s:Header/*, not s:Header).
711 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
713 * MessageSecurityBindingSupport.cs : more refactoring.
714 Made it abstract and added Initiator- and Recipient- classes.
715 Several members were moved to those derived types.
716 * AsymmetricSecurityBindingElement.cs,
717 SymmetricSecurityBindingElement.cs
718 SecurityChannelFactory.cs, SecurityChannelListener.cs,
719 SecurityRequestChannel.cs, SecurityOutputChannel.cs,
720 SecurityRequestContext.cs, SecureMessageGenerator.cs :
721 All dependent changes by above. Removed ISecurityChannelSource
722 which became useless.
724 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
726 * SecureMessageGenerator.cs : encryption parts should exist too.
727 * AsymmetricSecurityBindingElement.cs
728 SymmetricSecurityBindingElement.cs,
729 MessageSecurityBindingSupport.cs : some refactoring.
730 Split MessageSecurityBindingSupport into security binding element
731 specific parts and made MessageSecurityBindingSupport concrete.
732 It is likely split again, next time based on initiator/recipient.
734 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
736 * MessageSecurityUtility.cs, SecureMessageGenerator.cs :
737 split encryptor part in the former file into latter file, and
739 * SecurityRequestChannel.cs, SecurityOutputChannel.cs,
740 SecurityRequestContext.cs : apply the change above.
742 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
744 * MessageSecurityBindingSupport.cs :
745 Fixed incorrect TrgGetValue() use.
746 Added CollectRecipientSupportingTokens().
748 2007-01-11 Atsushi Enomoto <atsushi@ximian.com>
750 * MessageSecurityUtility.cs: acctually ReferenceList was inside
751 EncryptedKey. So, when a key itself is used to encrypt data,
752 ReferenceList is contained by itself.
753 * MessageSecurityBindingSupport.cs :
754 added CollectInitiatorSupportingTokens().
756 2007-01-10 Atsushi Enomoto <atsushi@ximian.com>
758 * MessageSecurityUtility.cs: it should support ReferenceList-less
761 2007-01-10 Atsushi Enomoto <atsushi@ximian.com>
763 * WSSecurityMessageHeader.cs : reverted previous unnecessary change.
764 * MessageSecurityUtility.cs : there already was uuid.
766 2007-01-09 Atsushi Enomoto <atsushi@ximian.com>
768 * MessageSecurityUtility.cs : replaced EncryptedKey with
769 WrappedKeySecurityToken, which seems to be in actual use in .net.
770 * WSSecurityMessageHeader.cs : added internal Guid so that it
771 could be shared between header items.
773 2006-12-14 Atsushi Enomoto <atsushi@ximian.com>
775 * HttpRequestContext.cs, TextMessageEncoder.cs :
778 2006-12-08 Atsushi Enomoto <atsushi@ximian.com>
780 * MessageSecurityUtility.cs : reducing DOM dependency. Use KeyInfoNode
781 for SecurityTokenReference resolution.
783 2006-12-08 Atsushi Enomoto <atsushi@ximian.com>
785 * MessageSecurityUtility.cs : fixed EncryptedData decryption to
786 consider DerivedKeyTokens correctly.
787 When creating LocalId, don't add '#' here.
789 2006-12-07 Atsushi Enomoto <atsushi@ximian.com>
791 * MessageSecurityUtility.cs :
792 handle key mapping for each wsse:Security.
794 2006-12-07 Atsushi Enomoto <atsushi@ximian.com>
796 * WSSecurityMessageHeader.cs : use prefix "c" for ws-secureconv.
798 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
800 * WSSecurityMessageHeader.cs : write top-level ReferenceList in
802 * MessageSecurityUtility.cs :
803 Now ReferenceList is placed under wsse:Security as WS-Security 1.1
804 suggests, and it is used to dereference decryption targets.
805 Now it premises multiple wsse:Security elements to read.
807 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
809 * WSSecurityMessageHeader.cs : don't write o:SecurityTokenReference
810 manually (and actually the namespace URI was wrong).
812 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
814 * WSSecurityMessageHeader.cs : improved DerivedKeyToken writing
816 * MessageSecurityUtility.cs : DerivedKeyToken creation.
818 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
820 * SecurityBindingElement.cs,
821 SymmetricSecurityBindingElement.cs,
822 AsymmetricSecurityBindingElement.cs :
823 implemented SetKeyDerivation().
825 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
827 * MessageSecurityUtility.cs : don't add KeyInfoClause to EncryptedKey
830 2006-12-06 Atsushi Enomoto <atsushi@ximian.com>
832 * MessageBufferImpl.cs : XmlReader-based buffer is not possible, so
835 2006-12-05 Atsushi Enomoto <atsushi@ximian.com>
837 * MessageSecurityUtility.cs : u:Timestamp will be encrypted/signed,
838 thus move it in front of encryption/signing.
840 2006-12-04 Atsushi Enomoto <atsushi@ximian.com>
842 * TransactionFlowBindingElement.cs : OnOpen()/OnClose() should not
843 check state by themselves (btw it's not really working).
844 * HttpChannelListener.cs : If the url does not end with '/' add it
845 so that it could be fed to HttpListener.
847 2006-12-04 Atsushi Enomoto <atsushi@ximian.com>
849 * HttpChannelFactory.cs : check scheme on CreateChannel.
850 * MessageHeader.cs : finish IsMessageVersionSupported().
852 2006-12-04 Atsushi Enomoto <atsushi@ximian.com>
854 * FaultConverter.cs : new file, not used yet though.
856 2006-10-21 Atsushi Enomoto <atsushi@ximian.com>
858 * SvcHttpHandler.cs : set GET URL to ServiceMetadataBehavior.
860 2006-10-20 Atsushi Enomoto <atsushi@ximian.com>
862 * SvcHttpHandler.cs : once AspNetReplyChannel get working with HTTP
863 GET as well as HttpReplyChannel, configuration would be ready now.
865 2006-10-18 Ankit Jain <jankit@novell.com>
867 * TextMessageEncoder.cs (MediaType): Use 'application/soap+xml' for
868 EnvelopeVersion.Soap12 and 'text/xml' for others.
869 * HttpReplyChannel.cs (TryReceiveRequest): Revert earlier patch for GET
871 Strip '?' from the query string.
873 2006-10-13 Ankit Jain <jankit@novell.com>
875 * MessageVersion.cs (None): Set AddressingVersion.None
877 2006-10-12 Atsushi Enomoto <atsushi@ximian.com>
879 * SvcHttpHandler.cs : added config-based endpoint addition code.
880 Though due to some weird bug in mono-core it does not seem to work,
881 so commented out for now.
882 * HttpReplyChannel.cs : handle wsdl query parameter. btw creating
883 mex request message might just be wrong.
884 Use expected MessageVersion by the channel.
885 * AspNetReplyChannel.cs : ditto. Plus, HTTP GET support.
887 2006-10-12 Atsushi Enomoto <atsushi@ximian.com>
889 * MessageSecurityBindingSupport.cs : added DefaultSignatureAlgorithm
890 which differs depending on whether it is asymmetric or symmetric.
891 * SecurityRequestChannel.cs, SecurityRequestContext.cs :
892 simplify SecureMessage() and DecryptMessage() arguments (just
893 take MessageSecurityBindingSupport instead of several parameters).
894 * MessageSecurityUtility.cs :
895 - simplify SecureMessage() and DecryptMessage() arguments (just
896 take MessageSecurityBindingSupport instead of several parameters).
897 - Take token inclusion mode into account. Don't include them when
898 it is not expected. Also, change the token reference style.
899 - add wsa:MessageID to the headers.
900 - For hmac-sha1 signing (default for symmetric binding), use
901 symmetric key created for encryption as well to create HMACSHA1.
902 - add Id to wsu:Timestamp.
903 - start to handle SecurityMessageProperty.
904 * WSSecurityMessageHeader.cs :
905 Added Id to WsuTimestamp. Also use prefixes for its XML output.
908 2006-10-06 Atsushi Enomoto <atsushi@ximian.com>
910 * CommunicationObject.cs : reject faulted state on Open()/Close().
911 * MessageHeaders.cs : removed extra fields.
913 2006-10-06 Ankit Jain <jankit@novell.com>
915 * HttpReplyChannel.cs (TryReceiveRequest): Handle HTTP GET.
917 2006-10-05 Atsushi Enomoto <atsushi@ximian.com>
919 * MessageSecurityUtility.cs, SecurityRequestContext.cs :
920 added some FIXMEs and additional arg.
922 2006-10-05 Atsushi Enomoto <atsushi@ximian.com>
924 * MessageSecurityUtility.cs : remove duplicate Action header.
926 2006-10-05 Atsushi Enomoto <atsushi@ximian.com>
928 * MessageFault.cs : partly implemented CreateFault(Message, int).
929 * Message.cs, MessageImpl.cs, MessageBufferImpl.cs :
930 handle IsFault correctly in each implementation.
932 2006-10-04 Ankit Jain <jankit@novell.com>
934 * HttpRequestChannel.cs (ProcessRequest): Read till the end.
936 2006-10-04 Ankit Jain <jankit@novell.com>
938 * HttpRequestChannel.cs (ProcessRequest): Temporary workaround for a bug
939 in WebConnectionStream.
941 2006-10-04 Ankit Jain <jankit@novell.com>
943 * MessageHeaders.cs (To): Use GetHeader<string> till
944 DataContractSerializer gets ISerializable support.
945 * CustomBinding.cs (.ctor): Get scheme from TransportBindingElement.
947 2006-10-04 Ankit Jain <jankit@novell.com>
949 * ServiceHostParser.cs (Parse):
950 (Split): Add some error checks.
952 2006-10-03 Atsushi Enomoto <atsushi@ximian.com>
954 * SslStreamSecurityBindingElement.cs : updated API to Sep. CTP.
955 * StreamUpgradeAcceptor.cs : Fix AcceptUpgrade().
956 * SslStreamSecurityUpgradeProvider.cs,
957 SslStreamSecurityUpgradeAcceptor.cs :
958 new files for Ssl upgrade provider implementation.
959 * MessageSecurityUtility.cs :
960 Create proper C14NTransform. Don't use enveloped signature
961 transform but sign every significant bits. On securing messages
962 use ChannelProtectionRequirements.
963 * SecurityRequestContext.cs : pass ChannelProtectionRequirements to
965 * MessageEncoder.cs : fix API (missing constraint).
966 * WSSecurityMessageHeader.cs : it is MustUnderstand.
967 * StreamUpgradeProvider.cs : API fix and implemented .ctor().
968 * AsymmetricSecurityBindingElement.cs : default protection order is
969 SignBeforeEncryptAndEncryptSignature.
971 2006-09-29 Ankit Jain <jankit@novell.com>
973 * SvcHttpHandlerFactory.cs (GetTypeFromSvc): Extract and move code to
974 ServicHostParser and use that here.
975 (PrivateBinPath): New.
976 (GetTypeFromBin): New. Load assembly from PrivateBinPath.
977 (RemovedCallback): Remove and close the SvcHttpHandler when its
978 corresponding file (.svc) changes.
979 * SvcHttpHandler.cs (Close): New. Close the ServiceHost.
981 * ServiceHostParser.cs : New.
982 * CachingCompiler.cs : New. Code extracted from
983 System.Web.Compilation.CachingCompiler
984 * CompilationException.cs : New. From System.Web.Compilation
985 * HtmlizedException.cs : New. Likewise.
987 2006-09-29 Atsushi Enomoto <atsushi@ximian.com>
989 * MessageSecurityBindingSupport.cs : For client side, it is always
990 InitiatorServiceModelSecurityTokenRequirement which should be
991 created. Fixed wrong client encryption key acquisition.
993 2006-09-29 Atsushi Enomoto <atsushi@ximian.com>
995 * SecurityChannelListener.cs, SecurityRequestContext.cs,
996 MessageSecurityBindingSupport.cs : made similar changes as factories
997 to listener so that session channels and input channels would work.
998 Added authenticator creation.
1000 2006-09-29 Atsushi Enomoto <atsushi@ximian.com>
1002 * Binding.cs : added missing members.
1004 2006-09-28 Atsushi Enomoto <atsushi@ximian.com>
1006 * SecurityRequestChannel.cs, SecurityOutputChannel.cs,
1007 MessageSecurityUtility.cs, MessageSecurityBindingSupport.cs :
1008 reduce code duplication between request and output channels.
1009 The common parts are now in MessageSecurityBindingSupport.
1010 Now reduced several arguments in SecureMessage() for client.
1012 2006-09-28 Atsushi Enomoto <atsushi@ximian.com>
1014 * ChannelFactoryBase.cs : implemented ValidateCreateChannel().
1016 2006-09-28 Atsushi Enomoto <atsushi@ximian.com>
1018 * AsymmetricSecurityBindingElement.cs,
1019 SecurityChannelListener.cs,
1020 SecurityRequestContext.cs,
1021 SymmetricSecurityBindingElement.cs,
1022 SecurityRequestChannel.cs,
1023 SecurityOutputChannel.cs,
1024 SecurityChannelFactory.cs,
1025 MessageSecurityBindingSupport.cs : 1) Refactoring.
1026 IMessageSecurityBindingSupport now becomes a class and contains
1027 all the members which resided in ISecurityChannelSource.
1028 Now it takes more constructor params.
1029 Made dependent changes on all sources above.
1031 2) Added SecurityTokenAuthenticator creation in
1032 SecurityRequestChannel (SecurityOutputChannel should do the same).
1034 2006-09-27 Atsushi Enomoto <atsushi@ximian.com>
1036 * SecurityRequestChannel.cs : ongoing improvements on conditional
1037 key creation. Actually there must be some part that creates an
1038 authenticator (WinFX does that).
1040 2006-09-27 Ankit Jain <jankit@novell.com>
1042 Add suport for handling .svc files.
1043 * SvcHttpHandlerFactory.cs: New.
1044 * SvcHttpHandler.cs: New.
1046 * HttpChannelListener.cs (PopulateChannel): Use AspNetReplyChannel if in
1047 asp.net environment.
1048 (OnOpen): Do nothing in asp.net environment.
1049 (OnClose): Likewise.
1050 * HttpReplyChannel.cs (HttpRequestContext): Move to ..
1051 * HttpRequestContext.cs: .. here.
1053 * AspNetReplyChannel.cs: New.
1054 * AspNetRequestContext.cs: New.
1056 2006-09-26 Atsushi Enomoto <atsushi@ximian.com>
1058 * MessageSecurityUtility.cs :
1059 Significantly rewritten decryption parts to respect ReferenceList
1060 to decrypt (so no workaround anymore).
1061 Now e:ReferenceList inside o:Security is treated as the referenced
1062 EncryptedType items are encrypted by 1) the derived key which is
1063 immediately in front of it, or 2) the default key (it is according
1064 to WS-SecureConversation section 9.1). Thus removed immediately
1065 previous hack to auto-fill wsu:Id attributes.
1067 On securing a message, generate correct Id and add DataReference
1068 to ReferenceList properly.
1070 2006-09-26 Atsushi Enomoto <atsushi@ximian.com>
1072 * WSSecurityMessageHeader.cs : handle ReferenceList. It is being
1075 2006-09-26 Atsushi Enomoto <atsushi@ximian.com>
1077 * WSSecurityMessageHeader.cs : handle DerivedKeyToken as a header content.
1078 Actually WSSecurityTokenSerializer should be able to consume it, but after
1079 spending a lot of time I still cannot successfully read it on WinFX.
1080 Skip ReferenceList for now.
1081 * MessageSecurityUtility.cs :
1082 Replaced some string literals with constants.
1083 Added some workaround for DerivedKeyToken retrieval.
1084 WinFX somehow sends incomplete ISO10126 padding which contains
1085 bigger number than the key size and is rejected by EncryptedXml,
1086 so added DecryptLax() which processes such ones in PaddingMode.None
1087 to workaround it (only for cross-connection between mono and winfx).
1088 Added some incomplete implicit wsu:Id processing.
1089 Don't try to replace SignedXml with EncryptedData. It is not added
1090 to the document tree.
1092 2006-09-25 Atsushi Enomoto <atsushi@ximian.com>
1094 * MessageSecurityUtility.cs : support message signature encryption. Some
1097 2006-09-22 Atsushi Enomoto <atsushi@ximian.com>
1099 * SecurityBindingElement.cs : implement Clone(). Remove some MonoTODOs.
1101 2006-09-22 Atsushi Enomoto <atsushi@ximian.com>
1103 * MessageSecurityUtility.cs : fix warnings.
1105 2006-09-22 Atsushi Enomoto <atsushi@ximian.com>
1107 * MessageSecurityUtility.cs : actually there would be more than one
1108 EncryptedData. Decrypt all.
1110 2006-09-22 Atsushi Enomoto <atsushi@ximian.com>
1112 * MessageSecurityUtility.cs : supply correct URIs in SecureMessage().
1113 Use ISO10126 padding mode (it is not required but in manner).
1115 2006-09-21 Atsushi Enomoto <atsushi@ximian.com>
1117 * MessageSecurityUtility.cs : now that EncryptedXml decryption bug is
1118 fixed, remove 16 bytes workaround (we still need encryption bugfix in
1119 that class to make it work fine with mono client).
1120 Removed buggy lines that reset decryption key to AES.
1121 Modified GetKey() argument to take EncryptedData/EncryptedKey element.
1122 * WSSecurityMessageHeader.cs :
1123 (SecurityTokenReferenceKeyInfo) support LoadXml.
1125 2006-09-20 Atsushi Enomoto <atsushi@ximian.com>
1127 * TransactionMessageProperty.cs : new file.
1129 2006-09-20 Atsushi Enomoto <atsushi@ximian.com>
1131 * ChannelPoolSettings.cs, OneWayBindingElement.cs : build fix, as
1132 gmcs happened to report wrong code.
1134 2006-09-19 Atsushi Enomoto <atsushi@ximian.com>
1136 * SecurityChannelFactory.cs, SecurityChannelListener.cs :
1137 .ctor() now requires ChannelProtectionRequirements which will be
1138 supplied via BindingParameterCollection.
1139 * SymmetricSecurityBindingElement.cs,
1140 AsymmetricSecurityBindingElement.cs : thus add
1141 ChannelProtectionRequirement parameter to factory/listener.
1142 * SecurityRequestChannel.cs : use recipient token requirement to
1143 create an encryption token. Thus differentiate the logic from
1144 signing (initiator) token.
1146 2006-09-19 Atsushi Enomoto <atsushi@ximian.com>
1148 * SymmetricSecurityChannelFactory.cs, SecurityChannelFactory.cs :
1149 renamed former to latter.
1150 * SymmetricSecurityChannelListener.cs, SecurityChannelListener.cs :
1153 2006-09-19 Atsushi Enomoto <atsushi@ximian.com>
1155 * MessageSecurityBindingSupport.cs : new internal types to commonize
1156 AsymmetricSecurityBindingElement and SymmetricSecurityBindingElement
1157 and thus make internal factory and listener reusable.
1158 * SymmetricSecurityChannelFactory.cs, SecurityRequestContext.cs,
1159 SecurityRequestChannel.cs, SecurityOutputChannel.cs,
1160 SymmetricSecurityChannelListener.cs : rewrote dependent parts on
1161 SymmetricSecurityBindingElement, using the new types above.
1162 * SymmetricSecurityBindingElement.cs :
1163 Use SymmetricMessageSecurityBindingSupport.
1164 * AsymmetricSecurityBindingElement.cs :
1165 thus implemented, using AsymmetricMessageSecurityBindingSupport.
1167 2006-09-19 Atsushi Enomoto <atsushi@ximian.com>
1169 * ChannelFactoryBase.cs : more RC1 update.
1171 2006-09-19 Atsushi Enomoto <atsushi@ximian.com>
1173 * MessageEncoder.cs, BinaryMessageEncoder.cs, MtomMessageEncoder.cs,
1174 TextMessageEncoder.cs : updated ReadMessage() API to RC1.
1175 * ChannelListenerBase.cs, ChannelListenerBase_1.cs,
1176 ChannelBase.cs : RC1 API updates.
1177 * MessageImpl.cs : implemented Properties.
1178 * HttpReplyChannel.cs : added HttpRequestMessageProperty support.
1180 2006-09-18 Ankit Jain <jankit@novell.com>
1182 * MessageHeaders.cs (MessageId):
1183 (RelatesTo): UniqueId is not serializable, serialize it as a string.
1185 2006-09-17 Atsushi Enomoto <atsushi@ximian.com>
1187 * ChannelParameterCollection.cs : new file.
1188 * LayeredOutputChannel.cs, SecurityOutputChannel.cs :
1189 new files for IOutputChannel implementation.
1190 * OneWayBindingElement.cs : hacky implementation.
1191 * SymmetricSecurityChannelFactory.cs : support IOutputChannel.
1192 * MessageSecurityUtility.cs : now create identifier from the security
1193 token and the token parameters which is added as an argument.
1194 * SecurityRequestContext.cs,
1195 SecurityRequestChannel.cs : SecureMessage() argument changes.
1196 Set MessageSecurityVersion (SecurityTokenVersion) to the token
1199 2006-09-17 Atsushi Enomoto <atsushi@ximian.com>
1201 * HttpRequestChannel.cs : close the HttpWebRequest.
1203 2006-09-17 Atsushi Enomoto <atsushi@ximian.com>
1205 * HttpRequestChannel.cs,
1206 HttpChannelFactory.cs : implement async request/reply.
1207 * HttpChannelFactory.cs :
1208 verify factory state when creating a channel.
1210 2006-09-17 Atsushi Enomoto <atsushi@ximian.com>
1212 * MessageEncoder.cs, TextMessageEncoder.cs, MtomMessageEncoder.cs,
1213 BinaryMessageEncoder.cs : added message version mismatch check.
1215 2006-09-15 Atsushi Enomoto <atsushi@ximian.com>
1217 * SymmetricSecurityChannelListener.cs, SecurityRequestContext.cs :
1218 Making incomplete changes to handle different tokens for encryption
1220 * SymmetricSecurityChannelFactory.cs, SecurityRequestChannel.cs :
1221 split channel implementation classes out to the latter file.
1222 * MessageSecurityUtility.cs : seems like there is
1223 TimeStampValidityDuration property, so use it (incomplete; a server
1224 needs another love).
1226 2006-09-12 Atsushi Enomoto <atsushi@ximian.com>
1228 * MessageSecurityUtility.cs, SymmetricSecurityChannelFactory.cs,
1229 SecurityRequestContext.cs : now that we have key identifier clause
1230 and working ResolveKeyIdentifierClause(), just create keys inside
1231 SecureMessage(). Add KeyInfo to the xmldsig.
1233 2006-09-12 Atsushi Enomoto <atsushi@ximian.com>
1235 * SymmetricSecurityChannelFactory.cs, SecurityRequestContext.cs :
1236 pass SecurityKeyIdentifierClause to SecureMessage().
1237 * SecurityBindingElement.cs : set X509ReferenceStyle as Thumbprint
1238 for IssuedToken binding element.
1239 * SymmetricSecurityChannelListener.cs : removed hack to just create
1240 X509 security token, and implemented correct token creation.
1241 * WSSecurityMessageHeader.cs : added new KeyInfoClause type that
1242 wraps SecurityTokenReference element.
1243 * MessageSecurityUtility.cs : use the above.
1245 2006-09-08 Atsushi Enomoto <atsushi@ximian.com>
1247 * MessageSecurityUtility.cs : raise MessageSecurityException when it
1248 could not find a security header.
1249 * SymmetricSecurityChannelFactory.cs : now it also supports
1250 IRequestSessionChannel. Extracted SecurityRequestChannel out from
1253 2006-09-08 Atsushi Enomoto <atsushi@ximian.com>
1255 * SecurityRequestContext.cs : moved securing message part to
1256 MessageSecurityUtility.cs.
1257 * MessageSecurityUtility.cs : the change above.
1258 use DateTime.Now for timestamp basis. Don't append signature to
1259 the document. Instead it is added to the header. Capture body
1260 content instead of the body itself.
1261 * SymmetricSecurityChannelFactory.cs : decrypt reply message to
1262 be processed by upper layers.
1264 2006-09-08 Atsushi Enomoto <atsushi@ximian.com>
1266 * MessageSecurityUtility.cs, WSSecurityMessageHeader.cs,
1267 SymmetricSecurityChannelListener.cs,
1268 SymmetricSecurityChannelFactory.cs, SecurityRequestContext.cs :
1269 more refactoring. Request serialization became much more conformant
1270 and add required header items.
1271 Security Token retrieval is needed to send it in the request.
1272 Fixed wrong key encryption.
1274 2006-09-07 Atsushi Enomoto <atsushi@ximian.com>
1276 * SecurityRequestContext.cs : the workaround was not functional.
1278 2006-09-07 Atsushi Enomoto <atsushi@ximian.com>
1280 * SecurityRequestContext.cs : some more refactoring. Use EncryptedXml
1281 API, especially ReplaceData(), instead of native crypto stuff.
1282 * WSSecurityMessageHeader.cs : handle dsig:Signature as well (for
1283 MessageProtectionOrder.SignBeforeEncrypt).
1285 2006-09-07 Atsushi Enomoto <atsushi@ximian.com>
1287 * SecurityRequestContext.cs : label should be combined of both
1288 the client's and the server's.
1290 2006-09-06 Atsushi Enomoto <atsushi@ximian.com>
1292 * SecurityRequestContext.cs : enable key derivation (though for now
1293 GenerateDerivedKey() is unimplemented). Create meaningful,
1294 decrypted request message to be consumed by the upper layer.
1296 2006-09-06 Atsushi Enomoto <atsushi@ximian.com>
1298 * SecurityRequestContext.cs : implement Close() and Reply().
1299 ongoing implementation of Reply(TimeSpan).
1300 * MessageSecurityUtility.cs : new file to collect utility methods.
1301 * SymmetricSecurityChannelFactory.cs : moved securing message code
1303 * SymmetricSecurityChannelListener.cs : tiny renaming.
1305 2006-09-06 Atsushi Enomoto <atsushi@ximian.com>
1307 * SecurityRequestContext.cs : security header is also stored.
1309 * WSSecurityMessageHeader.cs : read EncryptedKey and EncryptedData
1312 2006-09-06 Atsushi Enomoto <atsushi@ximian.com>
1314 * SymmetricSecurityChannelFactory.cs : tiny progress on securing
1317 2006-09-05 Atsushi Enomoto <atsushi@ximian.com>
1319 * SymmetricSecurityChannelFactory.cs : specify KeyUsage.Exchange
1320 so that it retrieves the security key in that manner.
1322 2006-09-05 Atsushi Enomoto <atsushi@ximian.com>
1324 * Binding.cs : MessageVersion is null when there is no
1325 MessageEncodingBindingElement.
1326 * Message.cs : null arg check.
1328 2006-09-05 Atsushi Enomoto <atsushi@ximian.com>
1330 * ChannelPoolSettings.cs, OneWayBindingElement.cs : new files.
1332 2006-09-04 Atsushi Enomoto <atsushi@ximian.com>
1334 * SymmetricSecurityChannelListener.cs, SecurityRequestContext.cs,
1335 LayeredReplyChannel.cs, LayeredCommunicationObject.cs,
1336 LayeredRequestChannel.cs : some refactoring.
1337 * SymmetricSecurityChannelFactory.cs :
1338 ongoing secure message creation implementation.
1340 2006-09-01 Atsushi Enomoto <atsushi@ximian.com>
1342 * SymmetricSecurityBindingElement.cs :
1343 pass specific ServiceCredentialsSecurityTokenManager type to
1344 SymmetricSecurityChannelListener as it needs ServiceCertificate.
1345 * SymmetricSecurityChannelListener.cs :
1346 get service certificate. It's a temporary hack.
1347 Move RequestContext code to below.
1348 * SecurityRequestContext.cs : new file.
1349 * WSSecurityMessageHeader.cs : implementing Read(), but to finish
1350 it I have to finish decryption of the incoming message.
1352 2006-08-31 Atsushi Enomoto <atsushi@ximian.com>
1354 * MessageImpl.cs : don't write attributes on the first body content
1355 element *on soap Body element*.
1356 * MessageBufferImpl.cs : don't throw ArgumentNullException.
1357 ObjectDisposedException is appropriate.
1358 * MessageHeader.cs : (RawMessageHeader) don't write element itself
1359 in OnWriteHeader*Contents*().
1361 2006-08-31 Atsushi Enomoto <atsushi@ximian.com>
1363 * WSSecurityMessageHeader.cs : new file.
1364 * SymmetricSecurityChannelFactory.cs :
1365 moved WSSecurityHeader and related types to the above.
1366 * SymmetricSecurityChannelListener.cs :
1367 reject SOAP-env-less message.
1369 2006-08-31 Atsushi Enomoto <atsushi@ximian.com>
1371 * SecurityChannelListener.cs, SymmetricSecurityChannelListener.cs :
1372 renamed former to latter.
1373 * SymmetricSecurityChannelFactory.cs :
1374 create requirements every time. It is also likely that I need
1375 another requirement instance to get service credentials here.
1377 2006-08-30 Atsushi Enomoto <atsushi@ximian.com>
1379 * SymmetricSecurityBindingElement.cs : make BuildChannelListener()
1380 similar to BuildChannelFactory() (set credentials, issuer binding
1382 * SecurityChannelListener.cs :
1383 more ongoing security support implementation.
1384 * SymmetricSecurityChannelFactory.cs :
1385 moved GetSecurityKey() to SymmetricSecurityRequestChannel.
1387 2006-08-29 Atsushi Enomoto <atsushi@ximian.com>
1389 * SecurityChannelListener.cs, SymmetricSecurityBindingElement.cs :
1390 Renamed SecurityChannelListener to SymmetricSecurityChannelListener.
1391 Implementation is underway.
1392 * LayeredReplyChannel.cs :
1393 like LayeredRequestChannel, use ChannelListenerBase to provide
1396 2006-08-29 Atsushi Enomoto <atsushi@ximian.com>
1398 * MessageHeader.cs : added another implementation type that uses
1399 XmlElement, for buffering purpose.
1400 * MessageImpl.cs : Header item types are user-driven by
1401 MessageHeader.GetHeader<T>(int), so at storing phase just store
1402 nodes as XmlElement.
1403 * MessageHeaders.cs : avoid dumping XmlNode to string to create
1406 2006-08-28 Atsushi Enomoto <atsushi@ximian.com>
1408 * SymmetricSecurityBindingElement.cs : find ClientCredentials from
1409 BindingParameterCollection, not from binding element properties.
1411 2006-08-28 Atsushi Enomoto <atsushi@ximian.com>
1413 * SecurityChannelFactory.cs, SymmetricSecurityChannelFactory.cs :
1414 renamed former to latter.
1416 2006-08-25 Atsushi Enomoto <atsushi@ximian.com>
1418 * SecurityBindingElement.cs : SetIssuerBindingContext should also
1419 work for SslSecurityTokenParameters.
1421 2006-08-24 Atsushi Enomoto <atsushi@ximian.com>
1423 * SecurityBindingElement.cs :
1424 Added SetIssuerBindingContextIfRequired().
1425 * SecurityChannelFactory.cs :
1426 Changed .ctor() arg again, just to receive binding element.
1427 * SymmetricSecurityBindingElement.cs :
1428 Call SetIssuerBindingContextIfRequired() in BuildChannelFactory().
1429 SymmetricSecurityChannelFactory .ctor() arg changes.
1430 "ProtectionTokenParameters" is not passed now.
1432 2006-08-23 Atsushi Enomoto <atsushi@ximian.com>
1434 * SymmetricSecurityBindingElement.cs : requirements should be
1435 filled at InitializeSecurityTokenParameters as long as possible.
1436 SymmetricSecurityChannelFactory<T> now does not receive
1437 requirements (it now creates one inside it) at .ctor().
1438 * SecurityChannelFactory.cs : remove requirement argument.
1440 2006-08-23 Atsushi Enomoto <atsushi@ximian.com>
1442 * SymmetricSecurityBindingElement.cs : implemented copy constructor.
1444 2006-08-22 Atsushi Enomoto <atsushi@ximian.com>
1446 * SymmetricSecurityBindingElement.cs :
1447 MessageSecurityVersion property is of type SecurityTokenVersion.
1448 * SecurityBindingElement.cs :
1449 Implemented CreateSecureConversationBindingElement().
1450 For CreateIssuedTokenBindingElement(), ProtectionTokenParameters is
1451 the argument IssuedSecurityTokenParameters itself.
1453 2006-08-22 Atsushi Enomoto <atsushi@ximian.com>
1455 * SymmetricSecurityBindingElement.cs :
1456 CreateSecurityTokenManager() can be directly used now.
1457 Use CallInitializeSecurityTokenRequirement() to fill requirement
1460 2006-08-16 Atsushi Enomoto <atsushi@ximian.com>
1462 * ChannelFactoryBase.cs : GetProperty() is virtual.
1464 2006-08-14 Atsushi Enomoto <atsushi@ximian.com>
1466 * SymmetricSecurityBindingElement.cs : in BuildChannelFactory(),
1467 create token manager, token parameters and token requirements,
1468 and fill some requirements.
1469 * TransportBindingElement.cs, HttpTransportBindingElement.cs,
1470 TextMessageEncodingBindingElement.cs : workaround to not throw NIE.
1471 * BindingContext.cs : implemented RemainingBindingElements.
1472 kill "no remaining binding element" error in GetInnerProperty()
1473 * SecurityChannelFactory.cs : now it became
1474 SymmetricSecurityChannelFactory, thus soon to be renamed.
1475 Several ongoing actual security resolution is on.
1477 2006-08-11 Atsushi Enomoto <atsushi@ximian.com>
1479 * CommunicationObject.cs :
1480 add GetCommunicationObjectType() and use it.
1481 * ChannelFactoryBase.cs, ChannelListenerBase_1.cs :
1482 use ThrowIfDisposedOrNotOpen().
1483 * LayeredCommunicationObject.cs : have similar ThrowIf...() methods
1484 to CommunicationObject. Make it IDisposable.
1485 * LayeredRequestChannel.cs : use above.
1486 * SecurityChannelFactory.cs : removed state check as it is done at
1489 2006-08-10 Atsushi Enomoto <atsushi@ximian.com>
1491 * SecurityBindingElement.cs : (CanBuildChannelFactory and
1492 CanBuildChannelListener) directly dispatch to BindingContext.
1493 * SymmetricSecurityBindingElement.cs : require protection token
1494 parameters before building a channel or a listener.
1495 * ChannelFactoryBase.cs : raise an error when a channel is being
1496 created without opening the factory.
1497 * ChannelListenerBase_1.cs : ditto for the listener.
1498 * SecurityChannelFactory.cs : before sending a request, it must be
1501 2006-08-07 Atsushi Enomoto <atsushi@ximian.com>
1503 * MessageBufferImpl.cs : initialize fields.
1504 workaround BufferSize just to return 0.
1505 * MessageImpl.cs : for BodyWriter, don't use DefaultMessageBuffer
1506 which does not support multi time write.
1507 * Message.cs : implemented State.
1509 2006-08-07 Atsushi Enomoto <atsushi@ximian.com>
1511 * Message.cs : OnGetBodyAttribute() cannot return anything unless it
1512 is consuming XmlReader.
1513 Implemented OnCreateBufferedCopy(), to return XPathMessageBuffer.
1514 * MessageBuffer.cs : implemented CreateNavigator().
1515 * MessageBufferImpl.cs : added XPathMessageBuffer class.
1517 I kinda know that MS heavily depends on binary XmlReader and may have
1518 XPathNavigator implementation based on the binary stuff, but at
1519 least for now we have almost no motivation to mimick it.
1521 2006-08-07 Atsushi Enomoto <atsushi@ximian.com>
1523 * SecurityChannelFactory.cs : a bit more of security header code.
1525 2006-08-04 Atsushi Enomoto <atsushi@ximian.com>
1527 * SymmetricSecurityBindingElement.cs :
1528 set default MessageProtectionOrder in every construction.
1530 2006-08-03 Atsushi Enomoto <atsushi@ximian.com>
1532 * LayeredRequestChannel.cs, SecurityChannelFactory.cs :
1533 changed to require ChannelFactoryBase to support default timeout.
1534 Made some methods non-virtual. Preparing code to add security
1535 headers (empty yet).
1536 * SecurityBindingElement.cs : implemented several factory methods
1537 that return SymmetricSecurityBindingElement.
1539 2006-08-02 Atsushi Enomoto <atsushi@ximian.com>
1541 * IStreamUpgradeBindingElement.cs,
1542 StreamUpgradeBindingElement.cs : renamed from former to latter.
1544 2006-08-02 Atsushi Enomoto <atsushi@ximian.com>
1546 * IStreamUpgradeBindingElement.cs : API update, soon to be renamed.
1548 2006-07-31 Ankit Jain <jankit@novell.com>
1550 * MessageHeaders.cs (From): Use Constants.WSA1
1551 (MessageId): Implement the same pattern as other properties (From etc).
1553 2006-07-28 Atsushi Enomoto <atsushi@ximian.com>
1555 * LocalClientSecuritySettings.cs : initialize IdentityVerifier as well.
1556 * SecurityBindingElement.cs : some cosmetic changes.
1558 2006-07-28 Atsushi Enomoto <atsushi@ximian.com>
1560 * SecurityBindingElement.cs : LocalClientSettings and
1561 LocalServiceSettings returns an instance for each.
1562 * LocalClientSecuritySettings.cs : initialized fields.
1564 2006-07-28 Atsushi Enomoto <atsushi@ximian.com>
1566 * LocalClientSecuritySettings.cs : moved from S.SM.Description, and
1567 kinda implemented Clone() just with MemberwiseClone().
1569 2006-07-27 Ankit Jain <jankit@novell.com>
1571 * MessageHeaders.cs (set_To): Use Uri.AbsoluteUri .
1572 * MessageHeader.cs (knownTypes): New. Known type array containing
1574 (CreateHeader): Use knownTypes with the DataContractSerializer .ctor
1576 2006-07-21 Atsushi Enomoto <atsushi@ximian.com>
1578 * LayeredRequestChannel.cs, LayeredReplyChannel.cs,
1579 LayeredCommunicationObject.cs,
1580 SecurityChannelFactory.cs, SecurityChannelListener.cs :
1581 new files to support security channels, though right now they
1582 just pass inner channels through.
1583 * SymmetricSecurityBindingElement.cs : use above.
1585 2006-07-21 Atsushi Enomoto <atsushi@ximian.com>
1587 * AsymmetricSecurityBindingElement.cs,
1588 SymmetricSecurityBindingElement.cs :
1589 Default SecurityTokenParameters is null.
1591 2006-07-20 Atsushi Enomoto <atsushi@ximian.com>
1593 * AsymmetricSecurityBindingElement.cs : remove NotImpl for now.
1595 2006-07-20 Atsushi Enomoto <atsushi@ximian.com>
1597 * Message.cs : When EnvelopeVersion is None, don't write SOAP
1599 * MessageHeader.cs : don't write headers when EnvelopeVersion is None.
1600 * MessageHeaders.cs : When EnvelopeVersion is None, don't output
1601 headers. When AddressingVersion is None, don't output addressing
1602 headers as well, except for Action which is still needed by
1605 2006-07-20 Atsushi Enomoto <atsushi@ximian.com>
1607 * MessageHeaders.cs : changed specific properties to find it from
1608 headers as Action property does (local variables won't be set by
1609 setter). Cache serializers. Check null serializer arguments.
1610 For EndpointAddress, GetHeader<T>() shouldn't use serializer.
1612 2006-07-19 Atsushi Enomoto <atsushi@ximian.com>
1614 * MessageHeader.cs : WriteTo() should treat EndpointAddress to not
1615 use XmlObjectSerializer (since it is not data contract type).
1617 2006-07-18 Atsushi Enomoto <atsushi@ximian.com>
1619 * MessageImpl.cs : Improved ReadHeaders().
1620 For certain header items, use EndpointAddress.ReadFrom().
1622 2006-07-18 Atsushi Enomoto <atsushi@ximian.com>
1624 * AsymmetricSecurityBindingElement.cs :
1625 it is not ISecurityCapabilities anymore.
1627 2006-07-18 Atsushi Enomoto <atsushi@ximian.com>
1629 * MessageVersion.cs : added None.
1631 2006-07-14 Atsushi Enomoto <atsushi@ximian.com>
1633 * Message.cs : GetReaderAtBodyContents() implementation using
1636 2006-07-13 Atsushi Enomoto <atsushi@ximian.com>
1638 * Message.cs : CreateMessage(version,action,xmlReader) incorrectly
1639 used MessageVersion.Default.
1641 2006-07-12 Duncan Mak <duncan@novell.com>
1643 * MessageBuffer.cs (MessageContentType): Return
1644 "application/soap+msbin1".
1646 * MessageImpl.cs (EmptyMessage.OnCreateBufferedCopy):
1647 (SimpleMessage.OnCreateBufferedCopy):
1648 (XmlReaderMessage.OnCreateBufferedCopy): Hook up with the new
1649 MessageBuffer implementations.
1651 * MessageBufferImpl.cs: Concrete implmentations for MessageBuffer.
1652 (DefaultMessageBuffer): Used by EmptyMessage and SimpleMessage.
1653 (XmlReaderMessageBuffer): Used by XmlReaderMessage.
1655 2006-07-12 Atsushi Enomoto <atsushi@ximian.com>
1657 * MessageImpl.cs : Action should be added in request messages. Omit
1658 it only in reply message, thus moved to dispatcher logic.
1660 2006-07-12 Ankit Jain <jankit@novell.com>
1662 * HttpRequestChannel.cs (HttpRequestChannel.Request): Workaround for a
1663 bug in WebConnectionStream.
1664 * MessageHeaders.cs (MessageHeaders.From):
1665 (MessageHeaders.ReplyTo):
1666 (MessageHeaders.To): Add the corresponding MessageHeader on set.
1668 2006-07-11 Atsushi Enomoto <atsushi@ximian.com>
1670 * MessageImpl.cs : when AddressingVersion is None (e.g. POX), don't
1671 add SOAP Action to the response at any time.
1673 2006-07-10 Atsushi Enomoto <atsushi@ximian.com>
1675 * SymmetricSecurityBindingElement.cs,
1676 SecurityBindingElement.cs : They are not ISecurityCapabilities now.
1677 Implemented .ctor() and some properties.
1679 2006-07-10 Atsushi Enomoto <atsushi@ximian.com>
1681 * TransactionFlowBindingElement.cs : new file.
1682 * HttpTransportBindingElement.cs : added missing KeepAliveEnabled.
1684 2006-07-06 Atsushi Enomoto <atsushi@ximian.com>
1687 DefaultAction vanished. CreateFault() now takes bufferSize arg.
1688 * MessageHeaders.cs : ArgumentException -> MessageHeaderException.
1689 * AddressingVersion.cs : added None. Equals() and GetHashCode()
1690 vanished (there is anyways no way to instantiate this type).
1691 * MessageVersion.cs : added Soap11 and Soap12.
1692 * TextMessageEncoder.cs : silly quotation mark wrapper disappeared
1693 in June CTP. goodie.
1695 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1697 * MtomMessageEncoder.cs, BinaryMessageEncoder.cs, Message.cs :
1698 removed some vanished CreateMessage() overloads.
1700 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1702 * CustomBinding.cs, HttpsTransportBindingElement.cs,
1703 HttpTransportBindingElement.cs :
1704 They are not ISecurityCapabilities anymore.
1705 Modified code to match June CTP behavior.
1707 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1709 * StreamSecurityUpgradeProvider.cs : Identity -> EndpointIdentity.
1711 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1713 * EmptyFaultException.cs : removed unused code.
1714 * IRequestContext.cs, RequestContext.cs : renamed former to latter.
1716 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1718 * LayeredChannelFactory.cs : removed obsolete class.
1719 * ChannelFactoryBase.cs, HttpChannelFactory.cs,
1720 ChannelListenerBase.cs, HttpChannelListener.cs,
1721 HttpReplyChannel.cs, ChannelManagerBase.cs :
1722 all those changes were brought by ChannelManagerBase changes.
1724 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1726 * ReplyChannelBase.cs, HttpChannelFactory.cs, ChannelBase.cs
1727 CommunicationObject.cs, HttpChannelListener.cs,
1728 ChannelFactoryBase.cs :
1729 CommunicationObject abstract changes brought this madness.
1731 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1733 * BindingContext.cs : listenUri address parameters could be null in
1736 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1738 * IRequestContext.cs :
1739 Now it became a class. File renaming will follow soon.
1740 * IChannelFactory.cs, IInputChannel.cs, IReplyChannel.cs,
1741 IDuplexChannel.cs, IDuplexSessionChannel.cs,
1742 IOutputChannel.cs, IOutputSessionChannel.cs,
1743 IRequestChannel.cs, IRequestSessionChannel.cs :
1744 They are not IDisposable anymore.
1745 For IReplyChannel, IRequestContext -> RequestContext.
1746 * IChannelListener.cs : removed Identity. Added GetProperty().
1747 * ChannelListenerBase.cs, ChannelListenerBase.cs,
1748 ReplyChannelBase.cs, HttpReplyChannel.cs :
1749 Several members disappeared, and dependent changes.
1750 * HttpTransportBindingElement.cs,
1751 HttpChannelListener.cs, :
1752 ChannelListenerBase.SharedChannelListener vanished.
1754 2006-07-05 Atsushi Enomoto <atsushi@ximian.com>
1756 * MessageEncodingBindingElement.cs
1757 MtomMessageEncodingBindingElement.cs,
1758 TextMessageEncodingBindingElement.cs,
1759 BinaryMessageEncodingBindingElement.cs :
1760 June CTP updates: AddressingVersion -> MessageVersion.
1761 * Binding.cs : June CTP. MessageVersion is added.
1762 * ChannelBase.cs, BindingContext.cs, IChannel.cs
1763 ChannelListenerBase_1.cs,
1764 ChannelListenerBase.cs, IChannelListener.cs,
1766 ChannelFactoryBase.cs, ChannelManagerBase.cs :
1767 June CTP. Several interface changes.
1768 * HttpTransportBindingElement.cs : June CTP. HttpMappingMode is gone.
1769 * IChannelManager.cs, LayeredChannelListener.cs,
1770 GenericWrapperChannelFactory.cs,
1771 GenericWrapperChannelListener.cs : They are not used anymore.
1773 2006-07-04 Atsushi Enomoto <atsushi@ximian.com>
1775 * MtomMessageEncoder.cs, BinaryMessageEncoder.cs :
1776 sync fix with June CTP API updates.
1778 2006-07-03 Ankit Jain <jankit@novell.com>
1780 * MessageEncodingBindingElementConverter.cs:
1781 * StandardBindingConverter.cs:
1782 * TransportBindingElementConverter.cs:
1783 * TransactionFlowBindingElementConverter.cs:
1784 * ReliableSessionBindingElementConverter.cs:
1785 * SecurityBindingElementConverter.cs:
1786 Rename *Converter.cs to *Importer.cs
1788 * TransferMode.cs: Move to System.ServiceModel
1790 2006-06-22 Atsushi Enomoto <atsushi@ximian.com>
1792 * CommunicationObject.cs : make sure to change State before
1793 OnClosing/OnClosed/OnOpening/OnOpened when they are overriden.
1795 2006-06-20 Atsushi Enomoto <atsushi@ximian.com>
1797 * Message.cs : output WSAddressing xmlns only when Action is
1798 specified (To should be affected, but seems like it is ignored).
1800 2006-06-20 Atsushi Enomoto <atsushi@ximian.com>
1802 * MessageImpl.cs : don't set Action when it is null.
1804 2006-06-12 Ankit Jain <jankit@novell.com>
1806 * TransportBindingElementConverter.cs (ImportEndpoint): Implement.
1808 2006-05-29 Atsushi Enomoto <atsushi@ximian.com>
1810 * SecurityBindingElement.cs, SecurityBindingElementConverter.cs :
1811 some updated API fixes.
1813 2006-05-29 Atsushi Enomoto <atsushi@ximian.com>
1815 * EnvelopeVersion.cs : moved back to S.SM.
1817 2006-05-29 Atsushi Enomoto <atsushi@ximian.com>
1819 * IBindingManualAddressing.cs : vanished in beta2.
1820 * HostedTransportConfiguration.cs, EnvelopeVersion.cs,
1821 LocalClientSecuritySettings.cs, LocalServiceSecuritySettings.cs :
1823 * SecurityBindingElement.cs :
1824 SecurityStandardsManager -> SecurityTokenSerializer.
1826 2006-05-29 Atsushi Enomoto <atsushi@ximian.com>
1828 * XmlSerializerBodyWriter.cs : new file to handle
1829 TypedMessageConverter.ToMessage().
1831 2006-04-26 Ankit Jain <jankit@novell.com>
1833 * TransportBindingElementConverter.cs (BeforeImport): Remove
1834 NotImplementedException.
1835 (ImportContract): Likewise.
1836 * CustomBinding.cs (.ctor): Use scheme from the binding parameter.
1838 2006-04-14 Atsushi Enomoto <atsushi@ximian.com>
1840 * HttpRequestChannel.cs, HttpChannelFactory.cs : message encoder
1841 being used was not reflecting that of Binding elements.
1843 2006-04-07 Atsushi Enomoto <atsushi@ximian.com>
1845 * HttpReplyChannel.cs : when SOAP action is not set as a header item,
1846 just assume that it is in the message.
1848 2006-04-06 Atsushi Enomoto <atsushi@ximian.com>
1850 * HttpReplyChannel.cs : actually HTTP header item might be null.
1852 2006-04-06 Atsushi Enomoto <atsushi@ximian.com>
1854 * HttpReplyChannel.cs : under SOAP 1.1 SOAP Action is sent as HTTP
1857 2006-04-06 Atsushi Enomoto <atsushi@ximian.com>
1859 * TextMessageEncoder.cs : for SOAP 1.1 content type is text/xml.
1861 2006-04-06 Atsushi Enomoto <atsushi@ximian.com>
1863 * MessageFault.cs : Fixed SOAP12 reason output.
1865 2006-04-05 Atsushi Enomoto <atsushi@ximian.com>
1867 * HttpReplyChannel.cs : no need to set response ContentEncoding since
1868 MessageEncoder.ContentType explicitly contains encoding.
1869 * AddressingVersion.cs : added ActionNotSupported property. Not sure
1870 if it is SOAP version dependent.
1872 2006-03-23 Atsushi Enomoto <atsushi@ximian.com>
1874 * HttpReplyChannel.cs : actually I could just workaround bug #77816.
1876 2006-03-16 Atsushi Enomoto <atsushi@ximian.com>
1878 * HttpChannelFactory.cs BindingContext.cs
1879 HttpChannelListener.cs HttpTransportBindingElement.cs :
1880 Now BindingContext holds MessageEncoder, and non-custom
1881 channel factory/listener should use it.
1882 * MtomMessageEncodingBindingElement.cs
1883 TextMessageEncodingBindingElement.cs
1884 BinaryMessageEncodingBindingElement.cs : BuildChannelFactory()/
1885 -Listener() now sets internal BindingContext.MessageEncoder.
1886 Fixed some public API.
1888 2006-03-15 Atsushi Enomoto <atsushi@ximian.com>
1890 * BindingContext.cs : CanBuildChannelXXX() should not raise error
1891 for insufficient elements.
1892 * DispatchRuntime.cs : OperationDescription name is not action. So
1893 OperationSelector is created by name, not by action.
1894 * TextMessageEncodingBindingElement.cs : Feb. CTP API fixes.
1896 2006-03-14 Atsushi Enomoto <atsushi@ximian.com>
1898 * MessageFaultBodyWriter.cs
1899 XmlReaderBodyWriter.cs
1900 XmlObjectSerializerBodyWriter.cs : made internal.
1901 * SecurityBindingElement.cs
1902 AsymmetricSecurityBindingElement.cs
1903 SymmetricSecurityBindingElement.cs : API fixes.
1904 * TransportBindingElementConverter.cs : ditto.
1905 * TextMessageEncodingBindingElement.cs : added set_AddressingVersion.
1906 * WindowsStreamSecurityBindingElement.cs
1907 SslStreamSecurityBindingElement.cs
1908 TransportSecurityBindingElement.cs : new files.
1910 2006-03-14 Atsushi Enomoto <atsushi@ximian.com>
1912 * MessageImpl.cs : according to the W3C REC, mustUnderstand when
1913 reading can be any xs:boolean value.
1915 2006-03-14 Atsushi Enomoto <atsushi@ximian.com>
1917 * Message.cs MessageImpl.cs : more sorting out the role of each
1919 * MessageHeader.cs : use envelope namespace, not addressing namespace.
1921 2006-03-14 Atsushi Enomoto <atsushi@ximian.com>
1923 * Message.cs : don't write body contents if it is empty.
1924 Moved WriteStartElement(,"Header",) to OnWriteStartHeaders().
1925 * MessageImpl.cs : implemented XmlReaderMessage.OnWriteBodyContents().
1926 * TextMessageEncoder.cs : WriteMessage() should close XmlWriter.
1927 * HttpRequestChannel.cs : close request stream before GetResponse().
1929 2006-03-13 Atsushi Enomoto <atsushi@ximian.com>
1931 * TextMessageEncoderFactory.cs
1932 TextMessageEncoder.cs : encoder does not hold reference to the
1933 factory anymore. Use MessageVersion property in CreateMssage().
1934 * HttpChannelListener.cs : now it holds message encoder.
1935 * HttpReplyChannel.cs : now it uses listener's shared message encoder.
1936 * MessageImpl.cs : header is optional.
1937 * EnvelopeVersion.cs : namespace URI is missing.
1939 2006-03-10 Atsushi Enomoto <atsushi@ximian.com>
1941 * CustomBinding.cs : removed Initialize().
1942 * Message.cs : renamed ForwardingMessage -> XmlReaderMessage.
1943 * MessageImpl.cs : renamed ForwardingMessage to XmlReaderMessage (used
1944 by Message.CreateMessage(MessageVersion,XmlReader,int) and
1945 implemented Headers, IsEmpty and GetReaderAtBodyContents().
1947 2006-03-08 Atsushi Enomoto <atsushi@ximian.com>
1949 * MessageHeaders.cs : implemented GetReaderAtHeader() and Action (it
1950 could be also added by Add() method and could be reset by Remove()).
1951 * MessageImpl.cs : implemented more. As noted above, Now we don't
1952 have to add Action header explicitly.
1953 * MessageHeader.cs : recovered Writer methods and ToString() from
1954 commented old version. Use prefixes for writing.
1955 Use WriteObjectContent() rather than WriteObject() (it needs
1956 DataContractSerializer fix btw).
1958 2006-03-08 Atsushi Enomoto <atsushi@ximian.com>
1960 * MessageHeader.cs : added missing IsReferenceParameter.
1961 * MessageHeaderInfo.cs : added missing IsReferenceParameter.
1962 * MessageHeaders.cs : avoid NullRef when actors is null.
1963 * MessageImpl.cs : (MessageImplBase) add Action header in .ctor().
1964 (ForwardingMessage) reader consumer is being added (not done).
1965 * MtomMessageEncodingBindingElement.cs : simply use Mtom factory.
1966 * MtomMessageEncoder.cs : updated ContentType value to Feb. CTP.
1967 * HttpRequestChannel.cs : this channel automatically call Open()
1968 when Request() is called. Set content length for request.
1969 Use MessageEncoder's ContentType to also handle charset.
1971 2006-03-07 Atsushi Enomoto <atsushi@ximian.com>
1973 * MessageImpl.cs : make them internal.
1974 * HttpReplyChannel.cs : set HttpListenerResponse properties correctly.
1976 2006-03-07 Atsushi Enomoto <atsushi@ximian.com>
1978 * ChannelManagerBase.cs : cleanup MonoTODO and unused field.
1979 * HttpChannelListener.cs : removed commented line.
1980 * RequestChannelBase.cs : new base class for request channel classes.
1981 * ChannelListenerBase.cs : OnEndClose() is rather NotImplemented yet.
1982 * HttpReplyChannel.cs : WaitHandle accepts limited timeout value.
1983 * Message.cs : default IsEmpty and IsFault false by default.
1984 * LayeredChannelListener.cs : removed Uri (no chance to set).
1985 * ChannelBase.cs : reimplemented timeout properties.
1986 * HttpRequestChannel.cs : now it is mostly based on
1987 RequestChannelBase. Some more attempt to implement Request().
1989 2006-03-07 Atsushi Enomoto <atsushi@ximian.com>
1991 * Binding.cs CustomBinding.cs : removed OnApplyConfiguration() and
1992 OnInitialize(). Added more BuildChannelListener() overloads.
1994 2006-03-06 Atsushi Enomoto <atsushi@ximian.com>
1996 * Binding.cs : added some more missing members especially to support
1998 * HttpChannelListener.cs : Uri should not be null.
1999 * HttpTransportBindingElement.cs : implemented
2000 CanBuildChannelFactory() and CanBuildChannelListener().
2001 * ServiceHostBase.cs : make Initialize() practically work at OnOpen().
2003 2006-03-06 Atsushi Enomoto <atsushi@ximian.com>
2005 * Binding.cs : updated default namespace property value to Feb. CTP.
2007 2006-03-03 Atsushi Enomoto <atsushi@ximian.com>
2009 * AddressHeader.cs : avoid null reference when value is null.
2010 * BindingContext.cs : check null ListenUri args.
2012 2006-03-03 Atsushi Enomoto <atsushi@ximian.com>
2014 * MessageFault.cs : Fixed default action name. Null arg check.
2016 2006-03-03 Atsushi Enomoto <atsushi@ximian.com>
2018 * BindingElement.cs : Dequeue elements in BindingContext directly.
2019 * BindingContext.cs : Added GetProperty<T>().
2020 * GenericWrapperChannelFactory.cs GenericWrapperChannelListener.cs :
2021 Now we don't need these extra classes, so marked as deprecated.
2023 2006-03-03 Atsushi Enomoto <atsushi@ximian.com>
2025 * Binding.cs : null arg check.
2026 * AddressingVersion.cs : fixed constants to pass the tests.
2027 * BindingElement.cs : tiny meessage fix.
2029 2006-03-02 Atsushi Enomoto <atsushi@ximian.com>
2031 * MessageEncodingBindingElement.cs
2032 BinaryMessageEncodingBindingElement.cs
2033 TextMessageEncodingBindingElement.cs
2034 MtomMessageEncodingBindingElement.cs
2035 MessageEncodingBindingElementConverter.cs : several API fixes.
2036 * BindingElement.cs : now if we use generic wrapper it causes
2037 infinite loop, so for now replace it with most-possible-but-
2040 2006-03-02 Atsushi Enomoto <atsushi@ximian.com>
2042 (back to normal "record-ChangeLogs" mode after the big API change mess)
2043 * HttpTransportBindingElement.cs : fixed minor API differences.
2045 2006-02-23 Atsushi Enomoto <atsushi@ximian.com>
2047 * AsymmetricSecurityBindingElement.cs SecurityBindingElement.cs
2048 SymmetricSecurityBindingElement.cs :
2049 Dependent fixes for System.IdentityModel reorgainzation.
2051 2006-02-23 Atsushi Enomoto <atsushi@ximian.com>
2053 * InputChannelBase.cs.notused IInputSession.cs IOutputSession.cs
2054 IProxyFormatter.cs WSHttpBindingBase.cs
2055 PnrpPeerResolverBindingElement.cs IMessageHeaderInfo.cs
2056 MessageInterceptorEventArgs.cs WSHttpBinding.cs
2057 WSFederationBinding.cs ISessionChannel.cs
2058 CompositeDuplexBindingElement.cs MessageVersion.cs
2059 MessageHeader.cs IRequestSessionChannel.cs
2060 BindingElementCollection.cs IReplySessionChannel.cs
2061 MessageProperties.cs IDuplexClientChannel.cs
2062 IInputSessionChannel.cs MessageImpl.cs IDuplexSessionChannel.cs
2063 TcpTransportBindingElement.cs EmptyFaultException.cs
2064 IBindingRuntimePreferences.cs AddressHeaderCollection.cs
2065 IStubFormatter.cs AsymmetricSecurityBindingElement.cs
2066 ConnectionOrientedTransportBindingElement.cs
2067 IProxyOperationSelector.cs MessageBuffer.cs IChannel.cs
2068 PeerResolverBindingElement.cs Message.cs
2069 HttpsTransportBindingElement.cs BindingElement.cs
2070 NamedPipetransportBindingElement.cs IBindingManualAddressing.cs
2071 MessageFaultBodyWriter.cs IReplyChannel.cs
2072 IBindingCapabilities.cs AddressHeader.cs IInputChannel.cs
2073 IMessageProperty.cs IOutputChannel.cs NetPeerTcpBinding.cs
2074 IRequestContext.cs IInputSessionShutdown.cs
2075 SecurityBindingElement.cs PeerTransportBindingElement.cs
2076 IDuplexSession.cs IChannelInitializer.cs
2077 IProxyMessageInspector.cs IChannelListener.cs NetTcpBinding.cs
2078 AddressingVersion.cs FaultException.cs
2079 IRequestChannel.cs MtomMessageEncodingBindingElement.cs
2080 TransportBindingElement.cs BinaryMessageEncodingBindingElement.cs
2081 TextMessageEncodingBindingElement.cs IChannelFactory.cs Binding.cs
2082 ITransportBindingElement.cs IChannelManager.cs MessageFault.cs
2083 MessageHeaders.cs IStubMessageInspector.cs UnderstoodHeaders.cs
2084 BindingParameterCollection.cs IInstanceProvider.cs
2085 WSDualHttpBinding.cs ISession.cs IErrorHandler.cs
2086 MessageEncodingBindingElement.cs HttpTransportBindingElement.cs
2087 IDuplexChannel.cs CustomBinding.cs IOutputSessionChannel.cs
2088 MessageContractAttribute.cs SymmetricSecurityBindingElement.cs :
2089 moved from System.ServiceModel due to the API changes.
2091 2006-02-23 Atsushi Enomoto <atsushi@ximian.com>
2093 * ChannelFactoryBase.cs ChannelListenerBase.cs HttpChannelFactory.cs
2094 HttpChannelListener.cs HttpRequestChannel.cs
2095 LayeredChannelListener.cs PeerMessagePropagationFilter.cs
2096 PeerNode.cs ReplyChannelBase.cs :
2097 Feb. CTP API changes - chapter 1.
2099 2006-02-15 Atsushi Enomoto <atsushi@ximian.com>
2101 * ChannelBase.cs : OnOpen() and OnClosed() do nothing.
2102 * ReplyChannelBase.cs : now it is based on ChannelBase.
2103 * ChannelListenerBase_1.cs : use DefaultCommunicationTimeouts.Instance
2104 and check null argument in .ctor().
2105 * HttpReplyChannel.cs : several changes.
2106 Non-async members are mostly implemented.
2107 * HttpChannelListener.cs : no need to receive
2108 IDefaultCommunicationTimeouts.
2109 * HttpRequestChannel.cs : maxSizeOfHeaders is used in MessageHeaders
2110 to allocate buffer array and int.MaxValue causes OutOfMemory.
2112 2006-02-15 Atsushi Enomoto <atsushi@ximian.com>
2114 * ClientFramingDecoderState.cs : added missing enum.
2115 * HttpRequestMessageProperty.cs HttpResponseMessageProperty.cs :
2117 * ChannelBase.cs, LayeredChannelListener.cs : tiny API fixes.
2119 2006-02-15 Atsushi Enomoto <atsushi@ximian.com>
2121 * HttpChannelListener.cs : Added GetChannels() and OnClose().
2122 AcceptChannel() has some code now but it needs more love.
2124 2006-02-14 Atsushi Enomoto <atsushi@ximian.com>
2126 * CommunicationObject.cs : Close() does not call Begin/EndClose().
2127 * ChannelManagerBase.cs : implemented AbortChannel and CloseChannel.
2128 * ChannelListenerBase.cs : implemented OnAbort and OnClose.
2130 2006-02-10 Atsushi Enomoto <atsushi@ximian.com>
2132 * HttpRequestChannel.cs : close the streams.
2134 HttpChannelListener.cs : renamed from former to latter.
2136 2006-02-09 Atsushi Enomoto <atsushi@ximian.com>
2138 * ReplyChannelBase.cs : new file for IReplyChannel implementations.
2139 * HttpReplyChannel.cs : new file for HTTP IReplyChannel.
2140 * HttpListenerFactory.cs : removed obsolete file.
2141 * HttpListener.cs : hacky WaitForChannel and AcceptChannel.
2142 * ChannelListenerBase_1.cs : implemented virtual stuff.
2143 * CommunicationObject.cs : Open() should not call BeginOpen() and
2144 EndOpen(). Instead, invoke events individually.
2145 * ChannelListenerBase.cs : its Open() is WaitForChannel().
2147 2006-02-08 Atsushi Enomoto <atsushi@ximian.com>
2149 * HttpRequestChannel.cs : call Flush() after serializing message
2152 2006-02-08 Atsushi Enomoto <atsushi@ximian.com>
2154 * HttpRequestChannel.cs : implemented pretty hacky Request().
2156 2006-02-02 Atsushi Enomoto <atsushi@ximian.com>
2158 * HttpRequestChannel.cs : Manager is HttpChannelFactory.
2160 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
2162 * ChannelFactoryBase.cs : removed some NotImplementedException for
2163 further internal implementation.
2165 2006-01-26 Atsushi Enomoto <atsushi@ximian.com>
2167 * HttpRequestChannel.cs : new file. mostly not implemented.
2168 * HttpChannelFactory.cs : Implemented CanCreateChannel().
2169 Partly implemented CreateChannel().
2171 2006-01-26 Atsushi Enomoto <atsushi@ximian.com>
2173 * HttpChannelFactory.cs : (.ctor())
2174 Don't take ChannelBuildContext.
2176 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2178 * StreamSecurityUpgradeInitiator.cs PeerMessageOrigination.cs
2179 ChannelBase.cs StreamSecurityUpgradeAcceptor.cs
2180 PeerMessagePropagation.cs : updated to Nov. CTP.
2182 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2184 * ChannelListenerBase.cs, ChannelManagerBase.cs,
2185 ChannelListenerBase_1.cs, LayeredChannelListener.cs,
2186 StreamSecurityUpgradeAcceptor.cs,
2187 StreamSecurityUpgradeInitiator.cs :
2188 Updated to Nov. CTP API.
2190 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2192 Now we can rename ListenerFactoryBase.cs to ChannelListenerBase.cs.
2194 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2196 renamed ChannelListenerBase.cs to ChannelListenerBase_1.cs.
2198 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2200 * ChannelBase.cs : tiny filename fix.
2201 * ChannelListenerBase.cs : added more .ctor()s.
2203 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2205 * HttpListenerFactory.cs LayeredChannelListener.cs HttpListener.cs
2206 ListenerFactoryBase.cs ChannelListenerBase.cs :
2207 updated IListener related stuff to Nov. CTP.
2208 file renaming will come soon.
2210 2005-11-21 Atsushi Enomoto <atsushi@ximian.com>
2212 * ListenerBase.cs, ChannelListenerBase.cs :
2213 moved from former to latter.
2214 * LayeredListenerFactory.cs, LayeredChannelListener.cs :
2215 moved from former to latter.
2217 2005-11-20 Atsushi Enomoto <atsushi@ximian.com>
2219 * SessionFaultedException.cs : removed in Nov. CTP
2221 2005-11-20 Atsushi Enomoto <atsushi@ximian.com>
2223 * CommunicationObject.cs : updated to Nov. CTP.
2224 * SessionFaultedException.cs : removed (in Nov. CTP)
2226 2005-11-03 Atsushi Enomoto <atsushi@ximian.com>
2228 * TextMessageEncoder.cs : kinda implemented (untested; Message is not
2231 2005-11-03 Atsushi Enomoto <atsushi@ximian.com>
2233 * MtomMessageEncoder.cs, BinaryMessageEncoderFactory.cs,
2234 TextMessageEncoderFactory.cs, BinaryMessageEncoder.cs,
2235 TextMessageEncoder.cs, MtomMessageEncoderFactory.cs : new files.
2236 * MessageEncoder.cs : largely implemented.
2238 2005-11-02 Atsushi Enomoto <atsushi@ximian.com>
2240 * IRequestReplyCorrelator.cs : new file.
2242 2005-11-02 Atsushi Enomoto <atsushi@ximian.com>
2244 * CommunicationObject.cs : OnClose() and OnError() are not virtual.
2245 * DirectionalAction.cs : implemented IComparable<DirectionalAction>.
2246 * MessageEncoder.cs : added misssing ToString().
2248 2005-11-02 Atsushi Enomoto <atsushi@ximian.com>
2250 * ChannelBehaviorCollection.cs : moved to sys.sm.
2252 2005-10-28 Atsushi Enomoto <atsushi@ximian.com>
2254 * HttpListenerFactory.cs, HttpListener.cs : new files.
2255 * ListenerFactoryBase.cs, ChannelManagerBase.cs,
2256 CommunicationObject.cs, ChannelFactoryBase.cs,
2257 StreamUpgradeProvider.cs, ChannelBase.cs : timeouts are now
2259 * CommunicationObject.cs : Aborted is bool. Added InternalClose()
2260 * ListenerFactoryBase.cs : kinda implemented GetListeners().
2262 2005-10-26 Atsushi Enomoto <atsushi@ximian.com>
2264 * ListenerFactoryBase.cs : some implementation.
2266 2005-10-26 Atsushi Enomoto <atsushi@ximian.com>
2268 * CommunicationObject.cs : more state fixes.
2270 2005-10-26 Atsushi Enomoto <atsushi@ximian.com>
2272 * CommunicationObject.cs : some state machine fixes.
2274 2005-10-26 Atsushi Enomoto <atsushi@ximian.com>
2276 * PeerNode.cs, ChannelManagerBase.cs :
2277 several API fixes detected by improved corcompare.
2279 2005-10-25 Atsushi Enomoto <atsushi@ximian.com>
2281 * LayeredListenerFactory.cs : added missing generic class constraint.
2283 2005-10-25 Atsushi Enomoto <atsushi@ximian.com>
2285 * ListenerFactoryBase.cs,
2286 ListenerBase.cs : class constraints were missing for generic args.
2288 2005-10-24 Atsushi Enomoto <atsushi@ximian.com>
2290 * StreamUpgradeInitiator.cs : tiny API fix.
2292 2005-10-23 Atsushi Enomoto <atsushi@ximian.com>
2294 * PeerMessagePropagationFilter.cs : tiny build fix.
2296 2005-10-23 Atsushi Enomoto <atsushi@ximian.com>
2298 * HttpRequestMessageProperty.cs, HttpResponseMessageProperty.cs :
2299 added Name. fixed StatusCode type.
2300 * StreamSecurityUpgradeInitiator.cs, StreamUpgradeAcceptor.cs,
2301 PeerNode.cs, StreamSecurityUpgradeAcceptor.cs,
2302 StreamUpgradeProvider.cs, StreamUpgradeInitiator.cs,
2303 DirectionalAction.cs, HostedTransportConfiguration.cs,
2304 StreamSecurityUpgradeProvider.cs, SessionFaultedException.cs,
2305 PeerMessagePropagationFilter.cs : added missing files.
2306 * Dummy.cs : removed. MSMQ stuff can be added later.
2308 2005-10-21 Atsushi Enomoto <atsushi@ximian.com>
2310 * DeliveryStatus.cs, DeliveryFailure.cs,
2311 HttpRequestMessageProperty.cs, PeerMessageOrigination.cs,
2312 PeerMessagePropagation.cs, HttpResponseMessageProperty.cs :
2314 * Dummy.cs : removed above.
2316 2005-10-18 Atsushi Enomoto <atsushi@ximian.com>
2318 * ChannelFactoryBase.cs : tiny .ctor() delegation fix.
2320 2005-10-09 Atsushi Enomoto <atsushi@ximian.com>
2322 * MessageEncoderFactory.cs, LayeredListenerFactory.cs,
2323 MessageEncoder.cs, BufferManager.cs : new files.
2324 * Dummy.cs : removed above.
2326 2005-10-09 Atsushi Enomoto <atsushi@ximian.com>
2328 * ChannelBase.cs, ChannelBehaviorCollection.cs : new channel files.
2329 * Dummy.cs : removed above.
2330 * CommunicationObject.cs, ListenerFactoryBase.cs : added missing bits.
2332 2005-10-09 Atsushi Enomoto <atsushi@ximian.com>
2334 * HttpChannelFactory.cs : new file.
2336 2005-10-08 Atsushi Enomoto <atsushi@ximian.com>
2338 * IReplyChannel.cs, IRequestContext.cs, IRequestChannel.cs:
2339 moved to ../System.ServiceModel (correct location).
2340 * ChannelFactoryBase.cs, LayeredChannelFactory.cs, TransferMode.cs:
2341 new files for channels.
2342 * Dummy.cs : reflected above changes.
2343 * ChannelManagerBase.cs : added a bit of code and todos.
2345 2005-10-04 Atsushi Enomoto <atsushi@ximian.com>
2347 * ChannelManagerBase.cs, ListenerBase.cs, ListenerFactoryBase.cs :
2348 added listener support files.
2349 * Dummy.cs : removed above.
2351 2005-10-03 Atsushi Enomoto <atsushi@ximian.com>
2353 * IReplyChannel.cs, IRequestContext.cs, IRequestChannel.cs :
2354 added request/reply channel interfaces.
2355 * Dummy.cs : removed above.
2356 * CommunicationObject.cs : FIXME comments.
2358 2005-10-03 Atsushi Enomoto <atsushi@ximian.com>
2360 * CommunicationObject.cs : implemented some members.
2362 2005-09-29 Atsushi Enomoto <atsushi@ximian.com>
2364 * CommunicationObject.cs : some signature fixes.