Hi Brett!
On Wed, Oct 24, 2012 at 09:18:07AM -0400, Brett Smith wrote:
After a lot of wait and hurry up, W3C flipped the switch last week and put our ngIRCd server into production. It's been running smoothly ever since and many of our users are quite happy with it.
Cool, that's great news :-)
In the run-up to production, we had to adjust a few constants in src/ngircd/defines.h to better suit our needs:
- CLIENT_ID_LEN: While I respect the RFC, we had to increase this in
order to authenticate users with longer usernames in our existing account system.
This is 64 in ngIRCd. Which value are you using now? Or are you adjusting CLIENT_USER_LEN, which is 10? And how long are your user names!?
- MAX_RPL_LIST: We generally have around 200 channels, so the default
limit of 100 seemed a little sharp to us.
To prevent overloading the server, restricting the possoble LIST command reply seemed to be a good idea; so your user would have to use something like "/LIST nam*" to search for channels. But you are right, this could be to limiting ...
- MAX_RPL_WHO: Users who joined channels with more than 25 people in
them were getting notices in their clients about reaching this limit, and they were happy to voice their complaints about it to me. :) Apparently we're not the only ones who have dealt with this: see also http://colloquy.info/project/ticket/3251.
I think it would be best to not enforce this limit at all for channels the user requesting the list is a member of. Or?
Would you be willing to consider patches that made all of these values configurable in ngircd.conf's [Limits] section? A patch could also enforce the value of CLIENT_ID_LEN with --strict-rfc. I'd be happy to write something up if we can get it upstream.
As noted above, we probably don't even need a configuration option for the WHO listing; but a configurable limit for LIST output would be very handy, indeed.
I'm not so sure about CLIENT_ID_LEN, because I fear clients that can't cope with longer client IDs ... But speaking about "client user names", are you really changing the CLIENT_ID_LEN, not CLIENT_USER_LEN?
Regards Alex