[dcc2] Clarification of DCC2 status

codemstr at ptdprolog.net codemstr at ptdprolog.net
Sun May 9 01:31:00 EDT 2004


> While its not finalized, I think it would be good to at least try to get
> a "sample" implementation done to check for any real life issues. Maybe
> something in Perl, or Mirc Script (if possible)/ DLL
> 
> Of course though, a "Sample" implementation might be hard to accommodate
> all the "features" (compression/encryption etc) but at least it would
> give us a indication we are on the right track.
> I'd be willing to work on something for Xchat, but do we have any
> "windows" coders out there?

How do you make such an implementation? For example, you mentioned 
compression. Right now, I don't see compression mentioned anywhere in the 
draft. You'll also notice that there is nothing that really talks about DCC 
CHAT (other than how to initiate the connection). My point is, how do you ask 
someone to implement something that has yet to be defined? Even the basics of 
file transfers haven't been defined yet! As I brought up before, is 
the "size:" header, the OFFSET token, the SIZE token, and the MULTI token, a 
32bit number, or a 64bit number? That makes a big difference when it comes to 
implementing this. The natural instinct of coders is going to be to just make 
it a long (likely 32bit). However, to allow large files it needs to be 64bit. 
Before someone can write an implementation, things such as that need to be 
defined. For someone using MSVC or gcc, no big deal, they have a 64bit type. 
But what about the guy developing for an OS that doesn't? He has to go and 
write 64bit emulation code himself! That means, whether it is 32bit or 64bit 
makes a *huge* difference on how he will have to implement it. Also you have 
compatibility issues. So far, I've seen posts on mIRC's forums and on 
Klient's about adding DCC2 support. Well lets say Klient says "I think they 
meant to have 64bit" and mIRC says "I think they meant to have 32bit" now we 
have problems. We have to incompatible implementations. That's the exact 
thing this draft was trying to prevent!

-- codemastr


More information about the dcc2 mailing list