babel_zebra_close_connexion(void)
{
zclient_stop(zclient);
+ zclient_free(zclient);
}
.arch-ids
*~
*.loT
+*clippy.c
&& (listcount(eigrp_om->eigrp) == 0))
{
if (zclient)
- zclient_free (zclient);
-
+ {
+ zclient_stop (zclient);
+ zclient_free (zclient);
+ }
exit(0);
}
static __attribute__((__noreturn__)) void
terminate (int i)
{
+ isis_zebra_stop ();
exit (i);
}
return;
}
+
+void
+isis_zebra_stop (void)
+{
+ zclient_stop (zclient);
+ zclient_free (zclient);
+}
extern struct zclient *zclient;
void isis_zebra_init(struct thread_master *);
+void isis_zebra_stop(void);
+
void isis_zebra_route_update (struct prefix *prefix,
struct isis_route_info *route_info);
int isis_distribute_list_update (int routetype);
command_parse.h
refix
grammar_sandbox
+clippy
+defun_lex.c
+plist_clippy.c
struct timeval now;
struct timeval zerotime = { 0, 0 };
struct timeval tv;
- struct timeval *tw;
+ struct timeval *tw = NULL;
int num = 0;
void nhrp_zebra_terminate(void)
{
zclient_stop(zclient);
+ zclient_free(zclient);
route_table_finish(zebra_rib[AFI_IP]);
route_table_finish(zebra_rib[AFI_IP6]);
}
cmd_terminate ();
if (zclient)
- zclient_free (zclient);
+ {
+ zclient_stop (zclient);
+ zclient_free (zclient);
+ }
if (master)
thread_master_free (master);
* One or more ospf_finish()'s may have deferred shutdown to a timer
* thread
*/
+ zclient_stop (zclient);
+ zclient_free (zclient);
}
void
void
zclient_lookup_free (void)
{
+ zclient_stop (zlookup);
zclient_free (zlookup);
zlookup = NULL;
}
void pim_terminate()
{
+ struct zclient *zclient;
+
pim_free();
/* reverse prefix_list_init */
prefix_list_reset ();
pim_vrf_terminate ();
+
+ zclient = pim_zebra_zclient_get ();
+ if (zclient)
+ {
+ zclient_stop (zclient);
+ zclient_free (zclient);
+ }
}
if (! retain_mode)
rip_clean ();
+ rip_zclient_stop ();
+
exit (0);
}
install_element (RIP_NODE, &rip_default_information_originate_cmd);
install_element (RIP_NODE, &no_rip_default_information_originate_cmd);
}
+
+void
+rip_zclient_stop (void)
+{
+ zclient_stop (zclient);
+ zclient_free (zclient);
+}
extern void rip_route_map_init (void);
extern void rip_route_map_reset (void);
extern void rip_zclient_init(struct thread_master *);
+extern void rip_zclient_stop(void);
extern void rip_zclient_reset (void);
extern void rip_offset_init (void);
extern int if_check_address (struct in_addr addr);
if (! retain_mode)
ripng_clean ();
+ ripng_zebra_stop ();
exit (0);
}
install_element (RIPNG_NODE, &ripng_redistribute_type_metric_routemap_cmd);
install_element (RIPNG_NODE, &no_ripng_redistribute_type_cmd);
}
+
+void
+ripng_zebra_stop (void)
+{
+ zclient_stop (zclient);
+ zclient_free (zclient);
+}
extern void ripng_terminate (void);
/* zclient_init() is done by ripng_zebra.c:zebra_init() */
extern void zebra_init(struct thread_master *);
+extern void ripng_zebra_stop (void);
extern void ripng_zclient_reset (void);
extern void ripng_offset_init (void);