Merge TODO.

This commit is contained in:
William Pitcock 2008-06-10 20:34:46 -05:00
commit f25be66429
7 changed files with 46 additions and 61 deletions

12
TODO
View file

@ -18,7 +18,7 @@
[x] ssl usermode (+Z)
[x] ssl channelmode (done by extban and chm_compat)
[ ] acknowledgement message for SSL users like '* *** You are connected using SSL cipher "DHE RSA-AES 128 CBC-SHA"'
[ ] ssl stuff files generator in ./configure time
[x] tool for generating ssl certificates and other stuff
[ ] gnutls backend for at least SSL connections (replacing libcrypto use in m_challenge would be nice too)
[x] merge some stuff from ircd-seven directly (to be determined what)
[x] remote d:lines support
@ -26,12 +26,12 @@
[F] make an ability of using bandb instead of .conf files as bans storage
[/] drop non-TS6 (legacy protocol) support
[F] Doxygen code documentation
[F] module engine rework
[F] more beautiful way of adding new channel modes by module
[F] make nick/user/host validation functions/match tables able to work in separated modules,
[ ] module engine rework
[ ] more beautiful way of adding new channel modes by module
[ ] make nick/user/host validation functions/match tables able to work in separated modules,
this will help us making support for native characters sets/slashes in host etc
[F] auth checker module
[F] resolver module
[ ] auth checker module
[ ] resolver module
[x] Remove glines entirely
--- other stuff
[?] PASS selector:password for auth{} from ircd-seven? (useful for dynamic IPs)

View file

@ -236,7 +236,7 @@ extern struct server_conf *find_server_conf(const char *name);
extern void attach_server_conf(struct Client *, struct server_conf *);
extern void detach_server_conf(struct Client *);
extern void set_server_conf_autoconn(struct Client *source_p, char *name,
extern void set_server_conf_autoconn(struct Client *source_p, const char *name,
int newval);

View file

@ -55,7 +55,7 @@ DECLARE_MODULE_AV1(set, NULL, NULL, set_clist, NULL, NULL, "$Revision: 3406 $");
struct SetStruct
{
const char *name;
void (*handler) ();
void (*handler)(struct Client *source_p, const char *chararg, int intarg);
int wants_char; /* 1 if it expects (char *, [int]) */
int wants_int; /* 1 if it expects ([char *], int) */
@ -64,18 +64,19 @@ struct SetStruct
};
static void quote_adminstring(struct Client *, const char *);
static void quote_autoconn(struct Client *, char *, int);
static void quote_autoconnall(struct Client *, int);
static void quote_floodcount(struct Client *, int);
static void quote_identtimeout(struct Client *, int);
static void quote_max(struct Client *, int);
static void quote_operstring(struct Client *, const char *);
static void quote_spamnum(struct Client *, int);
static void quote_spamtime(struct Client *, int);
static void quote_splitmode(struct Client *, char *);
static void quote_splitnum(struct Client *, int);
static void quote_splitusers(struct Client *, int);
static void quote_adminstring(struct Client *, const char *, int);
static void quote_autoconn(struct Client *, const char *, int);
static void quote_autoconnall(struct Client *, const char *, int);
static void quote_floodcount(struct Client *, const char *, int);
static void quote_identtimeout(struct Client *, const char *, int);
static void quote_max(struct Client *, const char *, int);
static void quote_operstring(struct Client *, const char *, int);
static void quote_spamnum(struct Client *, const char *, int);
static void quote_spamtime(struct Client *, const char *, int);
static void quote_splitmode(struct Client *, const char *, int);
static void quote_splitnum(struct Client *, const char *, int);
static void quote_splitusers(struct Client *, const char *, int);
static void list_quote_commands(struct Client *);
@ -104,7 +105,7 @@ static struct SetStruct set_cmd_table[] = {
{"SPLITNUM", quote_splitnum, 0, 1 },
{"SPLITUSERS", quote_splitusers, 0, 1 },
/* -------------------------------------------------------- */
{(char *) 0, (void (*)()) 0, 0, 0}
{(char *) 0, (void (*)(struct Client *, const char *, int)) 0, 0, 0}
};
@ -143,14 +144,14 @@ list_quote_commands(struct Client *source_p)
/* SET AUTOCONN */
static void
quote_autoconn(struct Client *source_p, char *arg, int newval)
quote_autoconn(struct Client *source_p, const char *arg, int newval)
{
set_server_conf_autoconn(source_p, arg, newval);
}
/* SET AUTOCONNALL */
static void
quote_autoconnall(struct Client *source_p, int newval)
quote_autoconnall(struct Client *source_p, const char *arg, int newval)
{
if(newval >= 0)
{
@ -169,7 +170,7 @@ quote_autoconnall(struct Client *source_p, int newval)
/* SET FLOODCOUNT */
static void
quote_floodcount(struct Client *source_p, int newval)
quote_floodcount(struct Client *source_p, const char *arg, int newval)
{
if(newval >= 0)
{
@ -187,7 +188,7 @@ quote_floodcount(struct Client *source_p, int newval)
/* SET IDENTTIMEOUT */
static void
quote_identtimeout(struct Client *source_p, int newval)
quote_identtimeout(struct Client *source_p, const char *arg, int newval)
{
if(!IsOperAdmin(source_p))
{
@ -210,7 +211,7 @@ quote_identtimeout(struct Client *source_p, int newval)
/* SET MAX */
static void
quote_max(struct Client *source_p, int newval)
quote_max(struct Client *source_p, const char *arg, int newval)
{
if(newval > 0)
{
@ -248,7 +249,7 @@ quote_max(struct Client *source_p, int newval)
/* SET OPERSTRING */
static void
quote_operstring(struct Client *source_p, const char *arg)
quote_operstring(struct Client *source_p, const char *arg, int newval)
{
if(EmptyString(arg))
{
@ -267,7 +268,7 @@ quote_operstring(struct Client *source_p, const char *arg)
/* SET ADMINSTRING */
static void
quote_adminstring(struct Client *source_p, const char *arg)
quote_adminstring(struct Client *source_p, const char *arg, int newval)
{
if(EmptyString(arg))
{
@ -286,7 +287,7 @@ quote_adminstring(struct Client *source_p, const char *arg)
/* SET SPAMNUM */
static void
quote_spamnum(struct Client *source_p, int newval)
quote_spamnum(struct Client *source_p, const char *arg, int newval)
{
if(newval > 0)
{
@ -316,7 +317,7 @@ quote_spamnum(struct Client *source_p, int newval)
/* SET SPAMTIME */
static void
quote_spamtime(struct Client *source_p, int newval)
quote_spamtime(struct Client *source_p, const char *arg, int newval)
{
if(newval > 0)
{
@ -356,7 +357,7 @@ static const char *splitmode_status[] = {
/* SET SPLITMODE */
static void
quote_splitmode(struct Client *source_p, char *charval)
quote_splitmode(struct Client *source_p, const char *charval, int intval)
{
if(charval)
{
@ -416,7 +417,7 @@ quote_splitmode(struct Client *source_p, char *charval)
/* SET SPLITNUM */
static void
quote_splitnum(struct Client *source_p, int newval)
quote_splitnum(struct Client *source_p, const char *arg, int newval)
{
if(newval >= 0)
{
@ -433,7 +434,7 @@ quote_splitnum(struct Client *source_p, int newval)
/* SET SPLITUSERS */
static void
quote_splitusers(struct Client *source_p, int newval)
quote_splitusers(struct Client *source_p, const char *arg, int newval)
{
if(newval >= 0)
{
@ -534,24 +535,8 @@ mo_set(struct Client *client_p, struct Client *source_p, int parc, const char *p
else
newval = -1;
if(set_cmd_table[i].wants_char)
{
if(set_cmd_table[i].wants_int)
set_cmd_table[i].handler(source_p, arg, newval);
else
set_cmd_table[i].handler(source_p, arg);
return 0;
}
else
{
if(set_cmd_table[i].wants_int)
set_cmd_table[i].handler(source_p, newval);
else
/* Just in case someone actually wants a
* set function that takes no args.. *shrug* */
set_cmd_table[i].handler(source_p);
return 0;
}
set_cmd_table[i].handler(source_p, arg, newval);
return 0;
}
}

View file

@ -81,12 +81,12 @@ static void stats_p_spy(struct Client *);
struct StatsStruct
{
char letter;
void (*handler) ();
void (*handler) (struct Client *source_p);
int need_oper;
int need_admin;
};
static void stats_dns_servers (struct Client *);
static void stats_dns_servers(struct Client *);
static void stats_delay(struct Client *);
static void stats_hash(struct Client *);
static void stats_connect(struct Client *);
@ -142,8 +142,8 @@ static struct StatsStruct stats_cmd_table[] = {
{'I', stats_auth, 0, 0, },
{'k', stats_tklines, 0, 0, },
{'K', stats_klines, 0, 0, },
{'l', stats_ltrace, 0, 0, },
{'L', stats_ltrace, 0, 0, },
{'l', NULL /* special */, 0, 0, },
{'L', NULL /* special */, 0, 0, },
{'m', stats_messages, 0, 0, },
{'M', stats_messages, 0, 0, },
{'n', stats_dnsbl, 0, 0, },
@ -211,7 +211,7 @@ m_stats(struct Client *client_p, struct Client *source_p, int parc, const char *
if((statchar != 'L') && (statchar != 'l'))
stats_spy(source_p, statchar, NULL);
for (i = 0; stats_cmd_table[i].handler; i++)
for (i = 0; stats_cmd_table[i].letter; i++)
{
if(stats_cmd_table[i].letter == statchar)
{
@ -234,7 +234,7 @@ m_stats(struct Client *client_p, struct Client *source_p, int parc, const char *
/* Blah, stats L needs the parameters, none of the others do.. */
if(statchar == 'L' || statchar == 'l')
stats_cmd_table[i].handler (source_p, parc, parv);
stats_ltrace (source_p, parc, parv);
else
stats_cmd_table[i].handler (source_p);
}

View file

@ -25,9 +25,9 @@
#define YY_NO_UNPUT
int yyparse();
int yyparse(void);
int yyerror(const char *);
int yylex();
int yylex(void);
static time_t conf_find_time(char*);

View file

@ -50,7 +50,7 @@
struct config_server_hide ConfigServerHide;
extern int yyparse(); /* defined in y.tab.c */
extern int yyparse(void); /* defined in y.tab.c */
extern char linebuf[];
#ifndef INADDR_NONE

View file

@ -488,7 +488,7 @@ detach_server_conf(struct Client *client_p)
}
void
set_server_conf_autoconn(struct Client *source_p, char *name, int newval)
set_server_conf_autoconn(struct Client *source_p, const char *name, int newval)
{
struct server_conf *server_p;