Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#834 ICE Authenticator & Disconnecting Ghost fails

unspecified
closed
None
unspecified
5
2014-04-22
2011-10-15
SeaEagle1
No

I've recently switched to using a slightly adapted SMF authenticator through ICE, but am noticing a problem that I think happens somewhere in Murmur.

When a user gets disconnected with 'Disconnecting ghost', the 'new user' does not seem to get the appropriate group assigned, or at least not get the permissions from it. The log shows the following (anonymized and other users logging in/out removed):

<W>2011-10-14 17:33:15.223 1 => <130:(-1)> New connection: xx:58764
<W>2011-10-14 17:33:15.574 1 => <130:(-1)> Client version 1.2.3 (Win: 1.2.3)
<W>2011-10-14 17:33:15.846 1 => <130:TX(10669)> Authenticated
<W>2011-10-14 17:33:18.213 1 => <130:TX(10669)> Moved TX:130(10669) to Lounge[6:0]
<W>2011-10-14 23:04:28.487 1 => <141:(-1)> New connection: xx:56663
<W>2011-10-14 23:04:28.803 1 => <141:(-1)> Client version 1.2.3 (Win: 1.2.3)
<W>2011-10-14 23:04:28.908 1 => <141:TX(10669)> Disconnecting ghost
<W>2011-10-14 23:04:28.909 1 => <130:TX(10669)> Connection closed: [-1]
<W>2011-10-14 23:04:28.914 1 => <141:TX(10669)> Authenticated
<W>2011-10-14 23:04:29.024 1 => <141:TX(10669)> TX not allowed to Enter in Lounge

So far this has happened 3 times in 5x disconnecting ghosts, were the other 2 I'm not sure if it worked or not (the user didn't try to access limited channels), so seems pretty consistent. I've checked my ICE script and the log from that reports the user was properly logged in with their assigned group.

Discussion

  • SeaEagle1
    SeaEagle1
    2011-10-15

    I did a little digging in the Murmur source and it looks like what's happening is

    1) The user gets logged in using ICE, and gets assigned temporary groups (identified by UserID)
    2) The old user get kicked, probably clearing his temporary groups (identified by the same UserID).

    that way the user ends up with a cleared temporary groups table.

     
  • fwaggle
    fwaggle
    2011-10-23

    Just wanted to chime in that I can definitely see how this could happen, but I don't know how to fix it without risking breaking something in Murmur.

     
  • I committed an untested patch which should fix the problem.

     
  • Kissaki
    Kissaki
    2013-12-16

    • status: pending --> closed
    • Version: --> unspecified
    • Targeted Release: --> unspecified
     
  • Kissaki
    Kissaki
    2013-12-16

    • assigned_to: Benjamin Jemlich