Implemented initial support for zombie mode by Jan Krüger <jk@jk.gs>
authorpk910 <philipp@zoelle1.de>
Fri, 11 May 2012 01:55:33 +0000 (03:55 +0200)
committerpk910 <philipp@zoelle1.de>
Fri, 11 May 2012 01:59:50 +0000 (03:59 +0200)
This allows users to regain their status on the network after a ping
timeout. When a user pings out, the client structure is marked as a
zombie (FLAG_NOTCONN). Now the user has 15 minutes to reattach to that
client structure, using a separate Login on Connect feature.

When a user turns into a zombie, a ZO token is sent across the network;
the zombie status is reported in net bursts as the +Z umode.

> YY ZO YYXXX

When a user re-attaches, he regains all previous state information
(except oper privileges which are cleared), but retains his current
numnick.

> ZZ ZU ZZQQQ YYXXX

Here, ZZQQQ takes over all the state information of YYXXX.

Zombie mode is designed to be completely transparent to other users in
the sense that the user's disappearance should not be noticeable. The
current implementation silently drops all messages addressed to the
zombie in order to achieve this.


No differences found