gah, could never use * as admin mode, it fubard sjoin

This commit is contained in:
fishwaldo 2002-09-16 07:36:01 +00:00
parent 578844aa32
commit 7d905be142
7 changed files with 25 additions and 21 deletions

View file

@ -51,4 +51,5 @@ Symbols are:
(F) - Ungline is now global
(F) - Added SWHOIS to whois. Opers and servers can set swhois
(F) - Fixed a hook api issue with hooks not getting added correctly (Patch sent to hybird team)
(F) - Fixed a chanadmin bug that eggy found (Duh), Stupid Bug
(F) - Fixed a chanadmin bug that eggy found (Duh), Stupid Bug
(F) - Admin mode is now represented by ¤

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: channel.h,v 1.7 2002/09/13 06:50:06 fishwaldo Exp $
* $Id: channel.h,v 1.8 2002/09/16 07:36:01 fishwaldo Exp $
*/
#ifndef INCLUDED_channel_h
@ -154,7 +154,7 @@ struct Ban /* also used for exceptions -orabidoo */
/* Number of chanops, peon, voiced, halfops, chanadmins sublists */
#define NUMLISTS 5
#define NUMLISTS 4
#ifdef INTENSIVE_DEBUG
void do_channel_integrity_check(void);

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: config.h,v 1.4 2002/09/13 06:50:06 fishwaldo Exp $
* $Id: config.h,v 1.5 2002/09/16 07:36:01 fishwaldo Exp $
*/
#ifndef INCLUDED_config_h
@ -27,7 +27,12 @@
#include "setup.h"
#ifdef NDEBUG
#define DEBUG
#endif
#undef DEBUG
/*
* NeoIRCd COMPILE TIME CONFIGURATION OPTIONS
*

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: m_sjoin.c,v 1.7 2002/09/13 16:30:04 fishwaldo Exp $
* $Id: m_sjoin.c,v 1.8 2002/09/16 07:36:01 fishwaldo Exp $
*/
#include "stdinc.h"
@ -62,7 +62,7 @@ _moddeinit(void)
mod_del_cmd(&sjoin_msgtab);
}
const char *_version = "$Revision: 1.7 $";
const char *_version = "$Revision: 1.8 $";
#endif
/*
* ms_sjoin
@ -368,7 +368,7 @@ static void ms_sjoin(struct Client *client_p,
for (i = 0; i < 2; i++)
{
if (*s == '*')
if (*s == '¤')
{
fl |= MODE_ADMIN;
if (keep_new_modes)

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: m_who.c,v 1.9 2002/09/14 17:03:00 fishwaldo Exp $
* $Id: m_who.c,v 1.10 2002/09/16 07:36:01 fishwaldo Exp $
*/
#include "stdinc.h"
#include "tools.h"
@ -60,7 +60,7 @@ _moddeinit(void)
{
mod_del_cmd(&who_msgtab);
}
const char *_version = "$Revision: 1.9 $";
const char *_version = "$Revision: 1.10 $";
#endif
static void do_who_on_channel(struct Client *source_p,
struct Channel *chptr, char *real_name,
@ -207,7 +207,7 @@ static void m_who(struct Client *client_p,
else if(is_voiced(chptr,target_p))
do_who(source_p, target_p, chname, flags[2]);
else if(is_chan_admin(chptr, target_p))
do_who(source_p, target_p, chname, flags[4]);
do_who(source_p, target_p, chname, flags[3]);
else
do_who(source_p, target_p, chname, "");
}
@ -302,6 +302,7 @@ static void who_global(struct Client *source_p,char *mask, int server_oper)
for (lp = source_p->user->channel.head; lp; lp = lp->next)
{
chptr = lp->data;
who_common_channel(source_p,chptr->chanadmins,mask,server_oper,&maxmatches);
who_common_channel(source_p,chptr->chanops,mask,server_oper,&maxmatches);
who_common_channel(source_p,chptr->halfops,mask,server_oper,&maxmatches);
who_common_channel(source_p,chptr->voiced,mask,server_oper,&maxmatches);
@ -373,7 +374,7 @@ static void do_who_on_channel(struct Client *source_p,
flags[0],
flags[1],
flags[2],
flags[4],
flags[3],
chname, member);
}

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: channel.c,v 1.9 2002/09/14 17:03:00 fishwaldo Exp $
* $Id: channel.c,v 1.10 2002/09/16 07:36:01 fishwaldo Exp $
*/
#include "stdinc.h"
@ -335,7 +335,7 @@ send_channel_modes(struct Client *client_p, struct Channel *chptr)
send_members(client_p, modebuf, parabuf, chptr, &chptr->halfops, "%");
send_members(client_p, modebuf, parabuf, chptr, &chptr->chanadmins, "*");
send_members(client_p, modebuf, parabuf, chptr, &chptr->chanadmins, "¤");
send_members(client_p, modebuf, parabuf, chptr, &chptr->voiced, "+");
send_members(client_p, modebuf, parabuf, chptr, &chptr->peons, "");
@ -869,7 +869,7 @@ channel_chanop_or_voice(struct Channel *chptr, struct Client *target_p)
else if (find_user_link(&chptr->voiced, target_p))
return ("+");
else if (find_user_link(&chptr->chanadmins, target_p))
return ("*");
return ("¤");
return ("");
}

View file

@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: channel_mode.c,v 1.12 2002/09/14 17:03:00 fishwaldo Exp $
* $Id: channel_mode.c,v 1.13 2002/09/16 07:36:01 fishwaldo Exp $
*/
#include "stdinc.h"
@ -2088,20 +2088,18 @@ set_channel_mode_flags(char flags_ptr[NUMLISTS][2], struct Channel *chptr,
flags_ptr[1][0] = '\0';
flags_ptr[2][0] = '\0';
flags_ptr[3][0] = '\0';
flags_ptr[4][0] = '\0';
}
else
{
flags_ptr[0][0] = '@';
flags_ptr[1][0] = '%';
flags_ptr[2][0] = '+';
flags_ptr[3][0] = '\0';
flags_ptr[4][0] = '*';
flags_ptr[3][0] = '¤';
flags_ptr[0][1] = '\0';
flags_ptr[1][1] = '\0';
flags_ptr[2][1] = '\0';
flags_ptr[4][1] = '\0';
flags_ptr[3][1] = '\0';
}
}
@ -2461,8 +2459,7 @@ do_channel_integrity_check(void)
for (ptr2=ch->loc ## listname.head; ptr2; ptr2=ptr2->next) \
if (ptr2->data == cl) \
{ \
assert(matched_local == 0); \
matched_local = -1; \
assert(matched_local == 0); \ matched_local = -1; \
}
SEARCH_LIST(chanops)
SEARCH_LIST(halfops)