0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00

Got rid of startup functions and filters_postconfig().

By the way, how do you expect pointers to fit in an int?
This commit is contained in:
Martin Mares 2000-05-15 10:53:56 +00:00
parent 1c20608e02
commit 3b1c523d79
5 changed files with 2 additions and 33 deletions

5
TODO
View File

@ -9,6 +9,8 @@ Core
- filters: deletion of mandatory attributes? - filters: deletion of mandatory attributes?
- filters: user defined attributes? - filters: user defined attributes?
- kernel: persistent mode
- cli: show tables? - cli: show tables?
- client: Ctrl-R eats one more enter - client: Ctrl-R eats one more enter
@ -32,9 +34,6 @@ Documentation
Globals Globals
~~~~~~~ ~~~~~~~
- right usage of DBG vs. debug - right usage of DBG vs. debug
- kill preconfigs?
- check dump functions
- cleanup debugging calls
- logging and tracing; use appropriate log levels - logging and tracing; use appropriate log levels
- check incoming packets and log errors!! - check incoming packets and log errors!!
- check log calls for trailing newlines and log levels followed by comma - check log calls for trailing newlines and log levels followed by comma

View File

@ -58,7 +58,6 @@ config_parse(struct config *c)
protos_preconfig(c); protos_preconfig(c);
rt_preconfig(c); rt_preconfig(c);
cf_parse(); cf_parse();
filters_postconfig(); /* FIXME: Do we really need this? */
protos_postconfig(c); protos_postconfig(c);
#ifdef IPV6 #ifdef IPV6
if (!c->router_id) if (!c->router_id)

View File

@ -170,14 +170,7 @@ function_body:
CF_ADDTO(conf, function_def) CF_ADDTO(conf, function_def)
function_def: function_def:
FUNCTION SYM { DBG( "Beginning of function %s\n", $2->name ); cf_push_scope($2); } function_params function_body { FUNCTION SYM { DBG( "Beginning of function %s\n", $2->name ); cf_push_scope($2); } function_params function_body {
extern struct f_inst *startup_func, *test1_func, *test2_func;
cf_define_symbol($2, SYM_FUNCTION, $5); cf_define_symbol($2, SYM_FUNCTION, $5);
if (!strcasecmp($2->name, "__startup"))
startup_func = $5;
if (!strcasecmp($2->name, "__test1"))
test1_func = $5;
if (!strcasecmp($2->name, "__test2"))
test2_func = $5;
$2->aux = (int) $4; $2->aux = (int) $4;
$2->aux2 = $5; $2->aux2 = $5;
DBG("Hmm, we've got one function here - %s\n", $2->name); DBG("Hmm, we've got one function here - %s\n", $2->name);

View File

@ -43,8 +43,6 @@
#define P(a,b) ((a<<8) | b) #define P(a,b) ((a<<8) | b)
struct f_inst *startup_func = NULL, *test1_func, *test2_func;
#define CMP_ERROR 999 #define CMP_ERROR 999
static int static int
@ -682,25 +680,6 @@ f_eval_int(struct f_inst *expr)
return res.val.i; return res.val.i;
} }
void
filters_postconfig(void)
{
struct f_val res;
#if 1
if (!i_same(test1_func, test2_func))
bug("i_same does not work");
#endif
if (startup_func) {
debug( "Launching startup function...\n" );
f_pool = lp_new(&root_pool, 1024);
res = interpret(startup_func);
if (res.type == F_ERROR)
die( "Startup function resulted in error." );
debug( "done\n" );
}
}
/** /**
* filter_same - compare two filters * filter_same - compare two filters
* @new: first filter to be compared * @new: first filter to be compared

View File

@ -58,7 +58,6 @@ struct filter {
struct f_inst *root; struct f_inst *root;
}; };
void filters_postconfig(void);
struct f_inst *f_new_inst(void); struct f_inst *f_new_inst(void);
struct f_inst *f_new_dynamic_attr(int type, int f_type, int code); /* Type as core knows it, type as filters know it, and code of dynamic attribute */ struct f_inst *f_new_dynamic_attr(int type, int f_type, int code); /* Type as core knows it, type as filters know it, and code of dynamic attribute */
struct f_tree *f_new_tree(void); struct f_tree *f_new_tree(void);