Project

General

Profile

Bug #746

Quassel unsets default modes set by server upon first connect

Added by niekie almost 11 years ago. Updated about 10 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
07/15/2009
Due date:
% Done:

100%

Estimated time:
Version:
0.4.1
OS:
Any

Description

Quassel appears to unset the default modes set by a server upon the first connect.

Steps to reproduce:

1. Connect to an IRC network which by default sets modes on connect (like UnrealIRCd based networks, which set mode +x (host cloaking) by default)

2. Notice default modes being set by the server, and unset by the client:

[10:22:27] * Mode niekie +iwRx by niekie
[10:22:27] *
Mode niekie -iwRx by niekie

Workaround:

Setting back these modes manually will make Quassel remember them, however, and it will not unset them the next time you connect.

Expected behaviour:

Quassel should either not unset modes that are being forced upon it by the server (this may also prevent issues in case a server keeps setting modes if a client unsets them) or should "cache" the modes that are being forced upon it on first connect and only unset them if the client manually unsets them.

Associated revisions

Revision 63bc3c3a (diff)
Added by Marcus Eggenberger about 10 years ago

Fixes #746 - Quassel unsets default modes set by server upon first connect
Quassel now uses a saner approach and only keeps track of the mode changes you
really issued and also were confirmed by the server.
You can reset the auto restore modes via "/mode -reset". This command gives
currently no userfeedback as it would introduce new strings and this patch
is intended to be backported.

Revision a2e242f1 (diff)
Added by Marcus Eggenberger about 10 years ago

Fixes #746 - Quassel unsets default modes set by server upon first connect
Quassel now uses a saner approach and only keeps track of the mode changes you
really issued and also were confirmed by the server.
You can reset the auto restore modes via "/mode -reset". This command gives
currently no userfeedback as it would introduce new strings and this patch
is intended to be backported.

History

#1 Updated by dalbers almost 11 years ago

The attached patch is untested and pretty cruel, but may be a good starting point for someone else looking into this issue.

#2 Updated by ktr over 10 years ago

Problems with the auto usermodes after reconnect.
(all encountered on quakenet)

quassel is set to use usermode +x. this cloaks your host to auth.users.quakenet.org if logged in.

but if you want to use auth without cloaking and quassel has set +x before on quakenet, there is no way to remove the +x on connect (if you disconnect, remove the auth from perform and even set "/mode nick -x" in the perform).
it always sets +x after a while.

could recreate this bug(?) on another core. just connected to quakenet, set usermode +x without using the qauth, wrote "mode nick -x" in the perform and restarted the core.
after connecting with the client, usermode was set again to +x.
if i tried to disconnect from the core just after it reconnected to the ircd, the client even froze.

client is the same (from datafreak quasselclient[shared, 3.feb.2010]) tested cores are static0.5-0.1 and a core built from the git on 23.jan.2010.

#3 Updated by ktr over 10 years ago

just after sending the report i "found" smth like a solution.
tested successfully with both cores:

added a few lines "/mode nick -x" in the perform to spam the ircd on connect.
connected, confirmed that it does not set +x (just the, i guess default, +i on quakenet, had to be quick, in recent tries it showed, that i had only around 5-10sec until +x comes around) and immediately disconnected the core from the ircd.
again connected the core to the network and disconnected the client from the core (again a freeze here).
this somehow didnt set +x.

#4 Updated by EgS about 10 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

#5 Updated by johu about 10 years ago

  • Target version set to 0.6.2

Also available in: Atom PDF