[dcc2] required tokens / options
Dan Smith
dan at algenta.com
Tue Feb 24 18:59:31 EST 2004
Hi Szymon :)
At 02:04 PM 2/24/2004 +0100, you wrote:
>At this point I'd drop the "NONE" security option from the above examples
>since
> Security=NONE,A is equivalent to Security*=A
Good idea
>A thought about the "*" character:
Yeah, we should pick a character that doesn't have to be escaped, or
escaped in regex expressions. Doesn't really matter which character, as
long as it isn't used in the token name [A-Z0-9].
>Another thought about the "CANNOTACCEPT" message.
>I suggest changing the message name in "REJECT" since it better describes
>all the possible conditions.
>A nice idea could be to define an ErrorMessage=<description> token to
>provide the users with some feedback
>about why the negotiation failed.
>
>More speculations:
>I can also think of some sort of automated recovery of failed transactions.
>The rejecting client could optionally add an ErrorToken=<token> specifying
>the token that has causes
>the request to be rejected. This could allow the offering client to take
>actions in order to restart the
>negotiation after adjusting the parameters and maybe informing the user.
>For example:
>A--->B: DCC SEND File=<filehandle> Security=SSLv2 ....
>B--->A: DCC REJECT ErrorMessage="None of the security protocols is
>supported" ErrorToken=Security
>Client A asks the user: "The remote client didn't support the requested
>encryption protocol, do you want the file to
>be transmitted without encryption ?"
>If the user accepts a non-secure transmission then the negotiation
>restarts without the mandatory Security token.
That is a good point! we really don't address anything about failure
yet. Here are some questions.
Multiple Failures:
What happens if more than one required token fails? Perhaps a comma
delimited list of errortoken='s, or just the tokens themselves as REJECT
tokens?
Error Message:
I think that the errormessage= should be thought about more. What about
internationalization? I suppose the clients could just infer an error
message based on the errortoken(s) that were sent back and ignore the
errormessage= ?
User Rejection:
What happens if the user could have accepted and choose not to? could the
user give a reason in the reject errormessage for the rejection? Would
errortokens= exist in this case?
>Yet more thoughts:
>It is really common for IRC clients to ignore the rejected DCC/CTCP request.
>The draft should explicitly encourage the clients to reply with the REJECT
>message unless they are really flooded with
>the requests (in fact the clients should have a message queuing algorithm
>that would forbib
Yeah, that would be nice, but not all clients implement rate limiting. We
should not force an automated response to a message the client receives due
to the nature of irc and "flooding". I think the strongest wording we
could have is: "should" send the response and "may" be silently ignored.
All this means is that a client can not rely on receiving a reject message.
Cheers!
Dan
Dan Smith
+1 608-213-2867
Algenta Technologies, LLC
More information about the dcc2
mailing list