]> jfr.im git - irc/quakenet/snircd-patchqueue.git/blob - oplevelforward.patch
Update patchset for latest ircu changes
[irc/quakenet/snircd-patchqueue.git] / oplevelforward.patch
1 Fix forwarding by hub of oplevels for non Apass channels.
2
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 @@
7 nickstr[nickpos++] = 'v';
8 if (current_mode & CHFL_CHANOP)
9 {
10 - if (chptr->mode.apass[0])
11 + /* snircd - oplevel forward fix
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'
24 + */
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)
30 nickpos += ircd_snprintf(0, nickstr + nickpos, sizeof(nickstr) - nickpos, "%u", oplevel);
31 else
32 nickstr[nickpos++] = 'o';