diff --git a/ChangeLog b/ChangeLog index 0a0e621f..d85115b6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -53,6 +53,9 @@ v0.51.1 21-Feb-2004 mbfido: Changed ^aTID to include OS and CPU. + For the tic area create and message area create the check is + now case insensitive, also the area tagnames are forced to + uppercase. This should solve the problems with Linuxnet. mbfile: For creating www pages of the download areas, the new mapping diff --git a/TODO b/TODO index 79a1bd5a..2e9e159e 100644 --- a/TODO +++ b/TODO @@ -109,11 +109,6 @@ mbfido: L: Make it possible to only virus scan the complete archives. - N: Force processing of arealists so that all tags are forced to - uppercase. Seems to give problems in some nets. - - N: Make tic areas check case insensitive. - N: Let mbfido areas with a special switch update area descriptions. N: Send rulefile via netmail for each new connected mail area. diff --git a/lib/.cvsignore b/lib/.cvsignore index e85f1f89..bfc0eb36 100644 --- a/lib/.cvsignore +++ b/lib/.cvsignore @@ -1 +1 @@ -filelist ftscprod.c charset.bin +filelist ftscprod.c charset.bin mbcharsetc diff --git a/lib/dbmsgs.c b/lib/dbmsgs.c index d5dfc0eb..de138bf7 100644 --- a/lib/dbmsgs.c +++ b/lib/dbmsgs.c @@ -86,7 +86,7 @@ int smsgarea(char *what, int newsgroup) msgs_pos = ftell(fil) - msgshdr.recsize; sysstart = ftell(fil); fseek(fil, msgshdr.syssize, SEEK_CUR); - if (((!strcmp(what, msgs.Tag) && !newsgroup) || (!strcmp(what, msgs.Newsgroup) && newsgroup)) && msgs.Active) { + if (((!strcasecmp(what, msgs.Tag) && !newsgroup) || (!strcmp(what, msgs.Newsgroup) && newsgroup)) && msgs.Active) { sysrecord = 0; fclose(fil); msgs_crc = 0xffffffff; diff --git a/lib/dbtic.c b/lib/dbtic.c index ff6e14b6..1c46effd 100644 --- a/lib/dbtic.c +++ b/lib/dbtic.c @@ -87,7 +87,7 @@ int SearchTic(char *Area) tic_pos = ftell(fil) - tichdr.recsize; sysstart = ftell(fil); fseek(fil, tichdr.syssize, SEEK_CUR); - if (!strcmp(Area, tic.Name) && tic.Active) { + if (!strcasecmp(Area, tic.Name) && tic.Active) { sysrecord = 0; fclose(fil); tic_crc = 0xffffffff; diff --git a/mbfido/createf.c b/mbfido/createf.c index 5b492bf7..b0f81e10 100644 --- a/mbfido/createf.c +++ b/mbfido/createf.c @@ -118,14 +118,11 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) while ((*desc == ' ') || (*desc == '\t')) desc++; if (!strcmp(desc, fgroup.Comment)) { -// Syslog('f', "Start of group \"%s\" found", desc); while (fgets(buf, 4096, ap)) { if (!strncasecmp(buf, "Area ", 5)) { -// Syslog('f', "Area: %s", buf); tag = strtok(buf, "\t \r\n\0"); tag = strtok(NULL, "\t \r\n\0"); -// Syslog('f', "Tag: \"%s\"", tag); - if (!strcmp(tag, Area)) { + if (!strcasecmp(tag, Area)) { raid = strtok(NULL, "\t \r\n\0"); flow = strtok(NULL, "\t \r\n\0"); p = strtok(NULL, "\r\n\0"); @@ -141,7 +138,6 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) /* * All entries in group are seen, the area wasn't there. */ -// Syslogp('f', buf); break; } } @@ -163,7 +159,7 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) desc = p; while ((*desc == ' ') || (*desc == '\t')) desc++; - if (strcmp(tag, Area) == 0) { + if (strcasecmp(tag, Area) == 0) { Syslog('f', "Found tag \"%s\" desc \"%s\"", tag, desc); Found = TRUE; break; @@ -179,6 +175,12 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) return 1; } + /* + * Some peaple write taglists with lowercase tagnames... + */ + for (i = 0; i < strlen(tag); i++) + tag[i] = toupper(tag[i]); + Syslog('m', "Found tag \"%s\" desc \"%s\"", tag, desc); /* @@ -186,7 +188,7 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) * If needed, connect at uplink. */ if (SendUplink) { - sprintf(temp, "+%s", Area); + sprintf(temp, "+%s", tag); From = fido2faddr(fgroup.UseAka); To = fido2faddr(fgroup.UpLink); diff --git a/mbfido/createm.c b/mbfido/createm.c index cf3a7fd0..8f83c934 100644 --- a/mbfido/createm.c +++ b/mbfido/createm.c @@ -111,7 +111,13 @@ int CheckEchoGroup(char *Area, int SendUplink, faddr *f) desc = p; while ((*desc == ' ') || (*desc == '\t')) desc++; - if (strcmp(tag, Area) == 0) { + if (strcasecmp(tag, Area) == 0) { + /* + * Make sure the tag is uppercase + */ + for (i = 0; i < strlen(tag); i++) + tag[i] = toupper(tag[i]); + Syslog('m', "Found tag \"%s\" desc \"%s\"", tag, desc); /* @@ -119,7 +125,7 @@ int CheckEchoGroup(char *Area, int SendUplink, faddr *f) * If needed, connect at uplink. */ if (SendUplink) { - sprintf(temp, "+%s", Area); + sprintf(temp, "+%s", tag); From = fido2faddr(mgroup.UseAka); To = fido2faddr(mgroup.UpLink); if (UplinkRequest(To, From, FALSE, temp)) {