View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0004064||unreal||ircd||public||2011-12-20 05:52||2011-12-21 10:47|
|Target Version||Fixed in Version||3.2.10-rc1|
|Summary||0004064: Expose STARTTLS support in ISUPPORT|
|Description||UnrealIRCd doesn't explicitly tell clients that it supports STARTTLS. The client is expected to try the command and, see if the server responds with the proper numeric, and then upgrade. Some IRC clients avoid this sort of probing and would only upgrade if informed that the server supports STARTTLS.|
I suggest that for now, at least, STARTTLS be added to the CMDS list outputed in ISUPPORT, for example:
:test.ohnopub.net 005 EXCEPTS INVEX CMDS=KNOCK,MAP,DCCALLOW,USERIP,STARTTLS :are supported by this server
This would let clients look for the string `STARTTLS' in 005 numerics and upgrade upon receiving the numerics after registration (and perhaps before identifying to NICKSERV, etc.).
|Additional Information||(The suggested change is as simple as adding M_ANNOUNCE to the flags of STARTTLS's CommandAdd() call).|
The controversial bit of this is that STARTTLS is, in many ways, just like another IRC command but in other ways very different -- if the command is successful, the client _must_ start a TLS negotation; and this command only makes sense in an unencrypted context. So maybe STARTTLS should just be thrown into the ISUPPORT string instead of listed with the CMDS list.
|Tags||No tags attached.|
|3rd party modules|
I noticed that inspircd's 005 numeric just lists STARTTLS out on its own, so if we take that as a precedent then we shouldn't list STARTTLS in the CMDS list:
:colossus.teranova.net 005 bonki OPERLOG OVERRIDE REMOVE SAFELIST SECURELIST SSL= ESILENCE SILENCE=32 UHNAMES USERIP WATCH=32 SSL=188.8.131.52:6697 STARTTLS :are supported by this server
I see. Then again, does inspircd use CMDS= at all? I mean I see USERIP listed as well.
To me it would make perfect sense to list it in CMDS, as that is what it is.
||Should I throw this into CVS then? ;-)|
||In CMDS= by setting M_ANNOUNCE at the STARTTLS CommandAdd() ? Yes, sure, go ahead :)|
Fixed in http://hg.unrealircd.org/hg/unreal/rev/28edb1b2ffa3
- Include CMDS=STARTTLS in ISUPPORT/numeric 005 to let clients discover STARTTLS support through VERSION, before or after registration (0004064).
|2011-12-20 05:52||ohnobinki||New Issue|
|2011-12-20 19:56||ohnobinki||Note Added: 0016817|
|2011-12-20 20:54||syzop||Note Added: 0016818|
|2011-12-20 21:56||ohnobinki||Note Added: 0016819|
|2011-12-20 22:28||syzop||Note Added: 0016820|
|2011-12-20 23:29||ohnobinki||Note Added: 0016821|
|2011-12-20 23:29||ohnobinki||Status||new => resolved|
|2011-12-20 23:29||ohnobinki||Resolution||open => fixed|
|2011-12-20 23:29||ohnobinki||Assigned To||=> ohnobinki|
|2011-12-20 23:31||ohnobinki||Relationship added||child of 0003915|
|2011-12-21 10:47||syzop||Fixed in Version||=> 3.2.10-rc1|