A lot of fixes found with valgrind

This commit is contained in:
Michiel Broek
2003-12-04 22:07:33 +00:00
parent fab5a2edae
commit f0bbdba104
37 changed files with 2267 additions and 1427 deletions

View File

@@ -215,6 +215,7 @@ int dirinbound(void)
}
fseek(fp, nodeshdr.filegrp + nodeshdr.mailgrp, SEEK_CUR);
}
fclose(fp);
}
free(temp);
Syslog('m', "Finished directory inbound sessions");

View File

@@ -4,7 +4,7 @@
* Purpose ...............: Announce new files and FileFind
*
*****************************************************************************
* Copyright (C) 1997-2002
* Copyright (C) 1997-2003
*
* Michiel Broek FIDO: 2:280/2802
* Beekmansbos 10
@@ -112,7 +112,7 @@ int main(int argc, char **argv)
for (i = 0; i < NSIG; i++) {
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);
}

View File

@@ -130,9 +130,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 == SIGKILL))
if ((i == SIGHUP) || (i == SIGINT) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV))
signal(i, (void (*))die);
else
else if ((i != SIGKILL) && (i != SIGSTOP))
signal(i, SIG_IGN);
}

View File

@@ -202,6 +202,7 @@ void die(int onsig)
Msg_Close();
signal(onsig, SIG_IGN);
deinitnl();
if (!do_quiet) {
show_log = TRUE;
@@ -320,9 +321,9 @@ int main(int argc, char **argv)
*/
for(i = 0; i < NSIG; i++) {
if ((i == SIGINT) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM) || (i == SIGKILL))
if ((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);
}

View File

@@ -88,9 +88,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 == SIGBUS) || (i == SIGKILL) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM))
if ((i == SIGHUP) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM))
signal(i, (void (*))die);
else
else if ((i != SIGKILL) && (i != SIGSTOP))
signal(i, SIG_IGN);
}

View File

@@ -324,9 +324,9 @@ void closepage(FILE *fa, char *Path, int inArea, int Current, FILE *fi)
sprintf(temp2, "%s/index.temp", Path);
}
rename(temp2, temp1);
chmod(temp1, 0644);
free(temp1);
free(temp2);
chmod(temp1, 0644);
fa = NULL;
}

View File

@@ -154,7 +154,7 @@ int main(int argc,char *argv[])
if ((i == SIGHUP) || (i == SIGINT) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV))
signal(i, (void (*))die);
else
else if ((i != SIGKILL) && (i != SIGSTOP))
signal(i, SIG_IGN);
}
@@ -581,6 +581,7 @@ int compile(char *nlname, unsigned short zo, unsigned short ne, unsigned short n
fill_nllist(ndx, &nll);
}
fclose(nl);
Syslog('+', "%d entries", entries);
if (!do_quiet) {

View File

@@ -83,100 +83,99 @@ void ProgName()
int main(int argc, char **argv)
{
int i;
char *cmd, *too = NULL, *subj = NULL, *mfile = NULL, *flavor = NULL;
struct passwd *pw;
long tarea = 0;
int i;
char *cmd, *too = NULL, *subj = NULL, *mfile = NULL, *flavor = NULL;
struct passwd *pw;
long tarea = 0;
InitConfig();
TermInit(1);
oldmask = umask(007);
t_start = time(NULL);
InitConfig();
TermInit(1);
oldmask = umask(007);
t_start = time(NULL);
/*
* Catch all signals we can, and ignore or catch them
*/
for (i = 0; i < NSIG; i++) {
if ((i == SIGHUP) || (i == SIGBUS) || (i == SIGILL) ||
(i == SIGSEGV) || (i == SIGTERM) || (i == SIGKILL))
signal(i, (void (*))die);
else
signal(i, SIG_IGN);
/*
* Catch all signals we can, and ignore or catch them
*/
for (i = 0; i < NSIG; i++) {
if ((i == SIGHUP) || (i == SIGBUS) || (i == SIGILL) || (i == SIGSEGV) || (i == SIGTERM))
signal(i, (void (*))die);
else if ((i != SIGKILL) && (i != SIGSTOP))
signal(i, SIG_IGN);
}
if (argc < 2)
Help();
cmd = xstrcpy((char *)"Cmd:");
for (i = 1; i < argc; i++) {
cmd = xstrcat(cmd, (char *)" ");
cmd = xstrcat(cmd, argv[i]);
if (strncasecmp(argv[i], "i", 1) == 0)
do_index = TRUE;
if (strncasecmp(argv[i], "l", 1) == 0)
do_link = TRUE;
if (strncasecmp(argv[i], "k", 1) == 0)
do_kill = TRUE;
if (strncasecmp(argv[i], "pa", 2) == 0)
do_pack = TRUE;
if (strncasecmp(argv[i], "po", 2) == 0) {
do_post = TRUE;
too = argv[++i];
cmd = xstrcat(cmd, (char *)" \"");
cmd = xstrcat(cmd, too);
tarea = atoi(argv[++i]);
cmd = xstrcat(cmd, (char *)"\" ");
cmd = xstrcat(cmd, argv[i]);
subj = argv[++i];
cmd = xstrcat(cmd, (char *)" \"");
cmd = xstrcat(cmd, subj);
mfile = argv[++i];
cmd = xstrcat(cmd, (char *)"\" ");
cmd = xstrcat(cmd, mfile);
flavor = argv[++i];
cmd = xstrcat(cmd, (char *)" ");
cmd = xstrcat(cmd, flavor);
}
if (argc < 2)
Help();
cmd = xstrcpy((char *)"Cmd:");
for (i = 1; i < argc; i++) {
cmd = xstrcat(cmd, (char *)" ");
cmd = xstrcat(cmd, argv[i]);
if (strncasecmp(argv[i], "i", 1) == 0)
do_index = TRUE;
if (strncasecmp(argv[i], "l", 1) == 0)
do_link = TRUE;
if (strncasecmp(argv[i], "k", 1) == 0)
do_kill = TRUE;
if (strncasecmp(argv[i], "pa", 2) == 0)
do_pack = TRUE;
if (strncasecmp(argv[i], "po", 2) == 0) {
do_post = TRUE;
too = argv[++i];
cmd = xstrcat(cmd, (char *)" \"");
cmd = xstrcat(cmd, too);
tarea = atoi(argv[++i]);
cmd = xstrcat(cmd, (char *)"\" ");
cmd = xstrcat(cmd, argv[i]);
subj = argv[++i];
cmd = xstrcat(cmd, (char *)" \"");
cmd = xstrcat(cmd, subj);
mfile = argv[++i];
cmd = xstrcat(cmd, (char *)"\" ");
cmd = xstrcat(cmd, mfile);
flavor = argv[++i];
cmd = xstrcat(cmd, (char *)" ");
cmd = xstrcat(cmd, flavor);
}
if (strncasecmp(argv[i], "-a", 2) == 0) {
i++;
do_area = atoi(argv[i]);
}
if (strncasecmp(argv[i], "-q", 2) == 0)
do_quiet = TRUE;
if (strncasecmp(argv[i], "-a", 2) == 0) {
i++;
do_area = atoi(argv[i]);
}
if (strncasecmp(argv[i], "-q", 2) == 0)
do_quiet = TRUE;
}
if (!(do_index || do_link || do_kill || do_pack || do_post))
Help();
if (!(do_index || do_link || do_kill || do_pack || do_post))
Help();
ProgName();
pw = getpwuid(getuid());
InitClient(pw->pw_name, (char *)"mbmsg", CFG.location, CFG.logfile,
ProgName();
pw = getpwuid(getuid());
InitClient(pw->pw_name, (char *)"mbmsg", CFG.location, CFG.logfile,
CFG.util_loglevel, CFG.error_log, CFG.mgrlog, CFG.debuglog);
Syslog(' ', " ");
Syslog(' ', "MBMSG v%s", VERSION);
Syslog(' ', cmd);
free(cmd);
Syslog(' ', " ");
Syslog(' ', "MBMSG v%s", VERSION);
Syslog(' ', cmd);
free(cmd);
if (!do_quiet) {
printf("\n");
colour(3, 0);
}
if (!do_quiet) {
printf("\n");
colour(3, 0);
}
if (do_index || do_link || do_kill || do_pack) {
memset(&MsgBase, 0, sizeof(MsgBase));
DoMsgBase();
}
if (do_index || do_link || do_kill || do_pack) {
memset(&MsgBase, 0, sizeof(MsgBase));
DoMsgBase();
}
if (do_post) {
Post(too, tarea, subj, mfile, flavor);
}
if (do_post) {
Post(too, tarea, subj, mfile, flavor);
}
die(MBERR_OK);
return 0;
die(MBERR_OK);
return 0;
}

View File

@@ -4,7 +4,7 @@
* Purpose ...............: Netmail tracker / router
*
*****************************************************************************
* Copyright (C) 1997-2002
* Copyright (C) 1997-2003
*
* Michiel Broek FIDO: 2:280/2802
* Beekmansbos 10
@@ -267,6 +267,7 @@ int IsLocal(char *ftn, fidoaddr *res)
}
}
tidy_faddr(dest);
return R_NOROUTE;
}
@@ -378,9 +379,9 @@ int AreWeHost(faddr *dest)
int AreWeHub(faddr *dest)
{
int i, j;
node *nl;
faddr *fido;
int i, j;
node *nl;
faddr *fido;
for (i = 0; i < 40; i++)
if (CFG.akavalid[i])