Riferimenti per il file channel_mode.c

#include "stdinc.h"
#include "tools.h"
#include "channel.h"
#include "channel_mode.h"
#include "client.h"
#include "common.h"
#include "hash.h"
#include "hostmask.h"
#include "irc_string.h"
#include "sprintf_irc.h"
#include "ircd.h"
#include "list.h"
#include "numeric.h"
#include "s_serv.h"
#include "s_user.h"
#include "send.h"
#include "whowas.h"
#include "s_conf.h"
#include "event.h"
#include "memory.h"
#include "balloc.h"
#include "s_log.h"
#include "msg.h"

Vai al codice sorgente di questo file.

Strutture dati

struct  mode_letter
struct  ChannelMode

Definizioni

#define BAN_FUDGE   10
#define NCHCAPS   (sizeof(channel_capabs)/sizeof(int))
#define NCHCAP_COMBOS   (1 << NCHCAPS)
#define SM_ERR_NOTS   0x00000001
#define SM_ERR_NOOPS   0x00000002
#define SM_ERR_UNKNOWN   0x00000004
#define SM_ERR_RPL_B   0x00000008
#define SM_ERR_RPL_E   0x00000010
#define SM_ERR_NOTONCHANNEL   0x00000020
#define SM_ERR_RPL_I   0x00000040

Funzioni

static char * check_string (char *)
static char * fix_key (char *)
static char * fix_key_old (char *)
static void chm_nosuch (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_simple (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_limit (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_key (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_op (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_voice (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_ban (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_except (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void chm_invex (struct Client *, struct Client *, struct Channel *, int, int *, char **, int *, int, int, char, void *, const char *)
static void send_cap_mode_changes (struct Client *, struct Client *, struct Channel *, int, int)
static void send_mode_changes (struct Client *, struct Client *, struct Channel *, char *)
int add_id (struct Client *client_p, struct Channel *chptr, char *banid, int type)
static int del_id (struct Channel *chptr, char *banid, int type)
void channel_modes (struct Channel *chptr, struct Client *client_p, char *mbuf, char *pbuf)
void init_chcap_usage_counts (void)
void set_chcap_usage_counts (struct Client *serv_p)
void unset_chcap_usage_counts (struct Client *serv_p)
void clear_ban_cache (struct Channel *chptr)
void clear_ban_cache_client (struct Client *client_p)
static int get_channel_access (struct Client *source_p, struct Membership *member)
void set_channel_mode (struct Client *client_p, struct Client *source_p, struct Channel *chptr, struct Membership *member, int parc, char *parv[], char *chname)

Variabili

static char nuh_mask [MAXPARA][IRCD_BUFSIZE]
static char modebuf [IRCD_BUFSIZE]
static char parabuf [MODEBUFLEN]
static struct ChModeChange mode_changes [IRCD_BUFSIZE]
static int mode_count
static int mode_limit
static int simple_modes_mask
static int channel_capabs [] = { CAP_EX, CAP_IE, CAP_TS6 }
static struct ChCapCombo chcap_combos [NCHCAP_COMBOS]
BlockHeapban_heap
static struct mode_letter flags []
static struct ChannelMode ModeTable [255]


Documentazione delle definizioni

#define BAN_FUDGE   10

Definizione alla linea 93 del file channel_mode.c.

Referenziato da send_cap_mode_changes(), e send_mode_changes().

#define NCHCAP_COMBOS   (1 << NCHCAPS)

#define NCHCAPS   (sizeof(channel_capabs)/sizeof(int))

Definizione alla linea 94 del file channel_mode.c.

Referenziato da init_chcap_usage_counts().

#define SM_ERR_NOOPS   0x00000002

Definizione alla linea 441 del file channel_mode.c.

Referenziato da chm_ban(), chm_except(), chm_invex(), chm_op(), e chm_simple().

#define SM_ERR_NOTONCHANNEL   0x00000020

Definizione alla linea 445 del file channel_mode.c.

Referenziato da chm_op().

#define SM_ERR_NOTS   0x00000001

Definizione alla linea 440 del file channel_mode.c.

#define SM_ERR_RPL_B   0x00000008

Definizione alla linea 443 del file channel_mode.c.

Referenziato da chm_ban().

#define SM_ERR_RPL_E   0x00000010

Definizione alla linea 444 del file channel_mode.c.

Referenziato da chm_except().

#define SM_ERR_RPL_I   0x00000040

Definizione alla linea 446 del file channel_mode.c.

Referenziato da chm_invex().

#define SM_ERR_UNKNOWN   0x00000004

Definizione alla linea 442 del file channel_mode.c.

Referenziato da chm_nosuch().


Documentazione delle funzioni

int add_id ( struct Client client_p,
struct Channel chptr,
char *  banid,
int  type 
)

void channel_modes ( struct Channel chptr,
struct Client client_p,
char *  mbuf,
char *  pbuf 
)

static char * check_string ( char *  s  )  [static]

Definizione alla linea 125 del file channel_mode.c.

Riferimenti EmptyString, e IsSpace.

Referenziato da add_id(), e del_id().

static void chm_ban ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_except ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_invex ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_key ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_limit ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_nosuch ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

Definizione alla linea 546 del file channel_mode.c.

Riferimenti ERR_UNKNOWNMODE, form_str(), me, Client::name, sendto_one(), e SM_ERR_UNKNOWN.

static void chm_op ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_simple ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

static void chm_voice ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  parc,
int *  parn,
char **  parv,
int *  errors,
int  alev,
int  dir,
char  c,
void *  d,
const char *  chname 
) [static]

void clear_ban_cache ( struct Channel chptr  ) 

void clear_ban_cache_client ( struct Client client_p  ) 

static int del_id ( struct Channel chptr,
char *  banid,
int  type 
) [static]

static char * fix_key ( char *  arg  )  [static]

Definizione alla linea 396 del file channel_mode.c.

Referenziato da chm_key().

static char * fix_key_old ( char *  arg  )  [static]

Definizione alla linea 421 del file channel_mode.c.

Referenziato da chm_key().

static int get_channel_access ( struct Client source_p,
struct Membership member 
) [static]

void init_chcap_usage_counts ( void   ) 

Definizione alla linea 467 del file channel_mode.c.

Riferimenti ChCapCombo::cap_no, ChCapCombo::cap_yes, channel_capabs, chcap_combos, NCHCAP_COMBOS, e NCHCAPS.

Referenziato da main().

static void send_cap_mode_changes ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
int  cap,
int  nocap 
) [static]

static void send_mode_changes ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
char *  chname 
) [static]

void set_channel_mode ( struct Client client_p,
struct Client source_p,
struct Channel chptr,
struct Membership member,
int  parc,
char *  parv[],
char *  chname 
)

void set_chcap_usage_counts ( struct Client serv_p  ) 

void unset_chcap_usage_counts ( struct Client serv_p  ) 


Documentazione delle variabili

Definizione alla linea 51 del file channel.c.

Referenziato da add_id().

int channel_capabs[] = { CAP_EX, CAP_IE, CAP_TS6 } [static]

Definizione alla linea 108 del file channel_mode.c.

Referenziato da init_chcap_usage_counts().

struct ChCapCombo chcap_combos[NCHCAP_COMBOS] [static]

struct mode_letter flags[] [static]

struct ChModeChange mode_changes[IRCD_BUFSIZE] [static]

int mode_count [static]

int mode_limit [static]

Definizione alla linea 103 del file channel_mode.c.

Referenziato da chm_ban(), chm_except(), chm_invex(), chm_op(), chm_voice(), e set_channel_mode().

char modebuf[IRCD_BUFSIZE] [static]

Definizione alla linea 99 del file channel_mode.c.

struct ChannelMode ModeTable[255] [static]

Definizione alla linea 1313 del file channel_mode.c.

char nuh_mask[MAXPARA][IRCD_BUFSIZE] [static]

Definizione alla linea 97 del file channel_mode.c.

Referenziato da chm_ban(), chm_except(), e chm_invex().

char parabuf[MODEBUFLEN] [static]

Definizione alla linea 100 del file channel_mode.c.

int simple_modes_mask [static]

Definizione alla linea 104 del file channel_mode.c.

Referenziato da chm_simple(), e set_channel_mode().


Generato il Wed Apr 15 00:19:20 2009 per ircd-hybrid da  doxygen 1.5.6