]>
Commit | Line | Data |
---|---|---|
a7e6b62c | 1 | Fix forwarding by hub of oplevels for non Apass channels. |
2 | ||
b35a3131 | 3 | diff -r 3ccde3df7274 ircd/m_burst.c |
4 | --- a/ircd/m_burst.c Wed Feb 11 15:00:23 2009 +0100 | |
5 | +++ b/ircd/m_burst.c Wed Feb 11 16:25:54 2009 +0100 | |
6 | @@ -544,7 +544,25 @@ | |
a7e6b62c | 7 | nickstr[nickpos++] = 'v'; |
8 | if (current_mode & CHFL_CHANOP) | |
9 | { | |
10 | - if (chptr->mode.apass[0]) | |
92f62663 | 11 | + /* snircd - oplevel forward fix |
b35a3131 | 12 | + * |
13 | + * oplevel is not forwarded for -A channels | |
14 | + * appearantly this is done for some anti net rider stuff? | |
15 | + * but there does not seem any mention of that in | |
16 | + * http://undernet-ircu.svn.sf.net/viewvc/undernet-ircu/ircu2/trunk/ircd/m_burst.c?r1=1340&r2=1342 | |
17 | + * | |
18 | + * it just seems to be a fix to not forward oplevel 999 as numeric:999 | |
19 | + * but as numeric:o, which are the same level, but a legacy server cannot | |
20 | + * handle numeric:999 | |
21 | + * | |
22 | + * the fix seems to be to pass on the oplevel when | |
23 | + * oplevel smaller than MAXOPLEVEL, else just an 'o' | |
92f62663 | 24 | + */ |
b35a3131 | 25 | + /* oplevel is lower than MAXOPLEVEL, and thus we forward oplevels |
26 | + * if in the future outgoing burst is changed | |
27 | + * to sent :999 instead of :o this condition needs changing too | |
28 | + */ | |
29 | + if (oplevel < MAXOPLEVEL) | |
a7e6b62c | 30 | nickpos += ircd_snprintf(0, nickstr + nickpos, sizeof(nickstr) - nickpos, "%u", oplevel); |
31 | else | |
32 | nickstr[nickpos++] = 'o'; |