numerous bugs present in 7.2.0

ThaPrince thaprince at gmail.com
Fri Feb 3 05:43:35 EST 2006


Hello,

I have found a error in the TBURST module that causes the handler to squit
links that send a null topic. Lowering the minimum requirement of parameters
from 6 to 5 should fix the problem, as it appears though hybrid handlers
treat a blank param as not being a param at all.

Regards,

Jon



On 1/31/06, ThaPrince <thaprince at gmail.com> wrote:
>
> Hello,
>
> No problem at all! Another problem i have found is that client SSL
> seems to randomly disconnect people for no apparant reason. It seems
> to get worse the more SSL clients you have on the server. I havent
> been able to track down whats causing it, and it only affects ssl
> clients. Normal clients on the same server arent disconnected. The SSL
> users will simply be disconnected with a message akin to "Remote host
> has closed the Connection" or similar. It also seems to cascade and
> spread to other SSL users(I.E when one triggers it, it often
> disconnects other SSL users as well). If you need help tracking this
> one down I would be more than willing to help, as the SSL capability
> of hybrid is very popular :)
>
> Regards,
>
> Jon
>
>
> On 1/31/06, Michael Wobst <michael.wobst at gmail.com> wrote:
> > Thanks for reporting it! #2 and #3 were just fixed a couple of minutes
> > ago.  If no one else does, I'll look for #1 and #4 when I get back home.
> >
> > -Michael
> >
> > ThaPrince wrote:
> > > Hello,
> > >
> > > I have found numerous bugs in ircd-hybrid 7.2.0 as can be seen below:
> > >
> > > - sockhost is not properly relayed
> > > - match was called wrong causing xlines to fail.
> > > - Soft caller ID does not function correctly.
> > > - channel list formatting is broken
> > >
> > > Patch to fix the first 3 issues is below:
> > >
> > > The 4th issue is something introduced with the new nuh code. you can
> > > replicate it like so:
> > >
> > > /mode #Channel +bbb nick1 nick2 nick3
> > >
> > > The same is true for any of the lists that take parameters in such a
> > > fashion.
> > >
> > > and look at the output.
> > >
> > > Regards,
> > >
> > > Jon
> > >
> > > Index: src/s_user.c
> > > ===================================================================
> > > --- src/s_user.c        (revision 380)
> > > +++ src/s_user.c        (working copy)
> > > @@ -619,8 +619,7 @@
> > >                   source_p->name, source_p->hopcount+1,
> > >                  (unsigned long)source_p->tsinfo,
> > >                   ubuf, source_p->username, source_p->host,
> > > -                ((MyClient(source_p) && !IsIPSpoof(source_p)) ?
> > > -                source_p->sockhost : "0"),
> > > +                IsIPSpoof(source_p) ? "0" : source_p->sockhost,
> > >                   source_p->id, source_p->info);
> > >      }
> > >      else
> > > @@ -648,7 +647,7 @@
> > >                     source_p->name, source_p->hopcount+1,
> > >                    (unsigned long)source_p->tsinfo,
> > >                     ubuf, source_p->username, source_p->host,
> > > -
> > > ((MyClient(source_p)&&!IsIPSpoof(source_p))?source_p->sockhost:"0"),
> > > +                  IsIPSpoof(source_p) ? "0" : source_p->sockhost,
> > >                     source_p->id, source_p->info);
> > >        else
> > >          sendto_one(server, "NICK %s %d %lu %s %s %s %s :%s",
> > > Index: src/client.c
> > > ===================================================================
> > > --- src/client.c        (revision 380)
> > > +++ src/client.c        (working copy)
> > > @@ -1231,11 +1231,13 @@
> > >    }
> > >
> > >    if (IsSoftCallerId(target))
> > > -  {
> > >      DLINK_FOREACH(ptr, target->channel.head)
> > > -      if (IsMember(source, ptr->data))
> > > +    {
> > > +      struct Channel *chptr = ((struct Membership *)
> ptr->data)->chptr;
> > > +
> > > +      if (IsMember(source, chptr))
> > >          return (1);
> > > -  }
> > > +    }
> > >
> > >    return (0);
> > >  }
> > > Index: src/s_serv.c
> > > ===================================================================
> > > --- src/s_serv.c        (revision 380)
> > > +++ src/s_serv.c        (working copy)
> > > @@ -892,8 +892,8 @@
> > >                target_p->name, target_p->hopcount + 1,
> > >                (unsigned long) target_p->tsinfo,
> > >                ubuf, target_p->username, target_p->host,
> > > -
> > > ((MyClient(target_p)&&!IsIPSpoof(target_p))?target_p->sockhost:"0"),
> > > -          target_p->id, target_p->info);
> > > +              IsIPSpoof(target_p) ? "0" : target_p->sockhost,
> > > +              target_p->id, target_p->info);
> > >    else
> > >      sendto_one(client_p, "NICK %s %d %lu %s %s %s %s :%s",
> > >                target_p->name, target_p->hopcount + 1,
> > > Index: modules/m_xline.c
> > > ===================================================================
> > > --- modules/m_xline.c   (revision 380)
> > > +++ modules/m_xline.c   (working copy)
> > > @@ -235,7 +235,7 @@
> > >                       "XLINE %s %s %s :%s",
> > >                       parv[1], parv[2], parv[3], parv[4]);
> > >
> > > -  if (match(parv[1], me.name))
> > > +  if (!match(parv[1], me.name))
> > >      return;
> > >
> > >    if (find_matching_name_conf(ULINE_TYPE, source_p->servptr->name,
> > >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ircd-hybrid.org/pipermail/hybrid/attachments/20060203/e251f9d5/attachment.html>


More information about the hybrid mailing list