mirror of
https://github.com/osmarks/ngircd.git
synced 2025-01-07 06:10:28 +00:00
Servers other than the destination server didn't clean up the invite
list of an "invite-only" channel properly when an INVITE'd user joined.
This commit is contained in:
parent
f68e92eb9a
commit
233210b906
@ -12,6 +12,8 @@
|
|||||||
|
|
||||||
ngIRCd CVSHEAD
|
ngIRCd CVSHEAD
|
||||||
|
|
||||||
|
- Servers other than the destination server didn't clean up the invite
|
||||||
|
list of an "invite-only" channel properly when an INVITE'd user joined.
|
||||||
- Changed the reply of the MODE command to match the syntax of the
|
- Changed the reply of the MODE command to match the syntax of the
|
||||||
original ircd exactly: the unnecessary but missing ":" before the last
|
original ircd exactly: the unnecessary but missing ":" before the last
|
||||||
parameter has been added.
|
parameter has been added.
|
||||||
@ -508,4 +510,4 @@ ngIRCd 0.0.1, 31.12.2001
|
|||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
$Id: ChangeLog,v 1.229 2004/02/29 16:28:44 alex Exp $
|
$Id: ChangeLog,v 1.230 2004/04/09 20:46:46 alex Exp $
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
#include "portab.h"
|
#include "portab.h"
|
||||||
|
|
||||||
static char UNUSED id[] = "$Id: irc-channel.c,v 1.26 2004/03/11 22:16:31 alex Exp $";
|
static char UNUSED id[] = "$Id: irc-channel.c,v 1.27 2004/04/09 20:46:48 alex Exp $";
|
||||||
|
|
||||||
#include "imp.h"
|
#include "imp.h"
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
@ -86,7 +86,7 @@ IRC_JOIN( CLIENT *Client, REQUEST *Req )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Lokaler Client? */
|
/* Local client? */
|
||||||
if( Client_Type( Client ) == CLIENT_USER )
|
if( Client_Type( Client ) == CLIENT_USER )
|
||||||
{
|
{
|
||||||
/* Test if the user has reached his maximum channel count */
|
/* Test if the user has reached his maximum channel count */
|
||||||
@ -159,6 +159,16 @@ IRC_JOIN( CLIENT *Client, REQUEST *Req )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Remote server: we don't need to know whether the
|
||||||
|
* client is invited or not, but we have to make sure
|
||||||
|
* that the "one shot" entries (generated by INVITE
|
||||||
|
* commands) in this list become deleted when a user
|
||||||
|
* joins a channel this way. */
|
||||||
|
chan = Channel_Search( channame );
|
||||||
|
if( chan != NULL ) (VOID)Lists_CheckInvited( target, chan );
|
||||||
|
}
|
||||||
|
|
||||||
/* Channel joinen (und ggf. anlegen) */
|
/* Channel joinen (und ggf. anlegen) */
|
||||||
if( ! Channel_Join( target, channame ))
|
if( ! Channel_Join( target, channame ))
|
||||||
|
Loading…
Reference in New Issue
Block a user