oidentd: simultaneous connections and unpredictable ident lookups get ident replies mixed up
Bug #717029 reported by
thommey
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
shroudBNC |
In Progress
|
Medium
|
Gunnar Beutner |
Bug Description
The 'global { reply "ident" }' directive in ~/.oidentd.conf is not accurate enough to prevent simultaneous connections (or unpredictable ident lookups) from mixing up their idents. Oidentd does support range directives allowing for holding multiple possible replies with their precise connection data to be in ~/.oidentd.conf if one does not use the 'global' directive. Always writing all existing connections with their corresponding replies to oidentd.conf would prevent that issue from happening.
ADDITIONAL INFORMATION:
man oidentd.conf
To post a comment you must log in.
1.3 should already be much more careful when it comes to ident lookups. By making sure that there are no partially connected IRC sessions (for which ident lookups might be pending) we shouldn't get any wrong idents.
As for external apps.. how would listing all connections help here?
Scenario A:
a) sbnc connects a user, writes all connections in its .oidentd.conf
b) eggdrop connects (doesn't update the oidentd file), gets no ident at all
Scenario B:
a) sbnc connects a user, writes all connections in its .oidentd.conf
b) eggdrop connects (updates the oidentd file), gets the right ident
Scenario C:
a) both sbnc and eggdrop update the ident file at the same time, eggdrop 'wins'
b) sbnc user has an incorrect ident response
Scenario D:
a) sbnc connects user A, updates oidentd file
b) sbnc connects another user (B), in 1.2 user A might get an incorrect ident if they're not fully connected yet - in 1.3 their irc connection would be killed
I don't see any improvement at all. Am I missing any scenarios here?