Final updates after valgrind tests

This commit is contained in:
Michiel Broek
2003-12-08 18:01:25 +00:00
parent 14232958a4
commit 49328fa66c
13 changed files with 54 additions and 22 deletions

View File

@@ -104,6 +104,10 @@ void free_mem(void)
free(flags);
if (uxoutbound)
free(uxoutbound);
if (protocol)
free(protocol);
if ((nlent) && (nlent->url))
free(nlent->url);
}
@@ -137,6 +141,9 @@ void die(int onsig)
t_end = time(NULL);
Syslog(' ', "MBCICO finished in %s", t_elapsed(t_start, t_end));
/*
* Free memory
*/
free_mem();
deinitnl();

View File

@@ -193,9 +193,9 @@ int main(int argc, char *argv[])
* Catch all signals we can, and ignore the rest.
*/
for (i = 0; i < NSIG; i++) {
if ((i == SIGHUP) || (i == SIGINT) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM) || (i == SIGKILL))
if ((i == SIGHUP) || (i == SIGINT) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM))
signal(i, (void (*))die);
else
else if ((i != SIGKILL) && (i != SIGSTOP))
signal(i, SIG_IGN);
}
@@ -274,6 +274,7 @@ int main(int argc, char *argv[])
}
if (do_poll || do_stop) {
tidy_faddr(addr);
for (i = 3; i <= argc; i++) {
if (strncasecmp(argv[i-1], "-q", 2)) {
if ((addr = parsefaddr(argv[i-1])) == NULL)
@@ -288,6 +289,7 @@ int main(int argc, char *argv[])
}
if (do_reset) {
tidy_faddr(addr);
for (i = 3; i <= argc; i++) {
if (strncasecmp(argv[i-1], "-q", 2)) {
if ((addr = parsefaddr(argv[i-1])) == NULL)
@@ -314,6 +316,13 @@ int main(int argc, char *argv[])
}
nlent = getnlent(addr);
if (nlent->addr.domain)
free(nlent->addr.domain);
nlent->addr.domain = NULL;
if (nlent->url)
free(nlent->url);
nlent->url = NULL;
cmmask = getCMmask();
if (nlent->pflag == NL_DUMMY)
Fatal((char *)"Node is not in nodelist", MBERR_NODE_NOT_IN_LIST);
@@ -359,6 +368,7 @@ int main(int argc, char *argv[])
break;
}
}
tidy_faddr(addr);
die(rc);
}

View File

@@ -4,7 +4,7 @@
* Purpose ...............: MBSE BBS Outbound Manager - show node info
*
*****************************************************************************
* Copyright (C) 1997-2001
* Copyright (C) 1997-2003
*
* Michiel Broek FIDO: 2:280/2802
* Beekmansbos 10
@@ -135,6 +135,8 @@ int nlinfo(faddr *addr)
if (nlent->addr.domain)
free(nlent->addr.domain);
if (nlent->url)
free(nlent->url);
return 0;
}

View File

@@ -439,6 +439,8 @@ int poll(faddr *addr, int stop)
}
CreateSema((char *)"scanout");
}
if (nlent->url)
free(nlent->url);
}
free(pol);

View File

@@ -54,8 +54,8 @@ extern int tcp_mode;
extern pid_t mypid;
node *nlent;
fa_list *remote=NULL;
node *nlent = NULL;
fa_list *remote = NULL;
int session_flags;
int remote_flags;