Changed to support BBBS uplink requests
This commit is contained in:
parent
9198b319d3
commit
8c57fc580f
@ -3,16 +3,25 @@ $Id$
|
|||||||
|
|
||||||
v0.61.4 11-Aug-2004
|
v0.61.4 11-Aug-2004
|
||||||
|
|
||||||
|
upgrade:
|
||||||
|
If you have BBBS uplinks and use automatic uplink requests then
|
||||||
|
change the setup of these nodes in screen 7.10.
|
||||||
|
|
||||||
mbfido:
|
mbfido:
|
||||||
No help was displayed when no valid command was given.
|
No help was displayed when no valid command was given.
|
||||||
Echomail for non-existing areas now finally is stored in the
|
Echomail for non-existing areas now finally is stored in the
|
||||||
badmail area.
|
badmail area.
|
||||||
Echomail received from not connected nodes is stored in the
|
Echomail received from not connected nodes is stored in the
|
||||||
badmail area unless the area allowes it.
|
badmail area unless the area allowes it.
|
||||||
|
Can now send (hopefully) valid uplink requests to BBBS systems.
|
||||||
|
|
||||||
mbuser:
|
mbuser:
|
||||||
Fixed permissions.
|
Fixed permissions.
|
||||||
|
|
||||||
|
mbsetup:
|
||||||
|
Changed nodes screens to have a separate uplink managers setup
|
||||||
|
screen, and added switches for BBBS uplinks.
|
||||||
|
|
||||||
|
|
||||||
v0.61.3 25-Jul-2004 - 11-Aug-2004
|
v0.61.3 25-Jul-2004 - 11-Aug-2004
|
||||||
|
|
||||||
|
2
TODO
2
TODO
@ -116,8 +116,6 @@ mbfido:
|
|||||||
N: Implement areamgr/filemgr %avail command to list available areas
|
N: Implement areamgr/filemgr %avail command to list available areas
|
||||||
from areas files.
|
from areas files.
|
||||||
|
|
||||||
N: Areamgr uplink request, add change for bbbs (Aarrrgghhh).
|
|
||||||
|
|
||||||
mbcico:
|
mbcico:
|
||||||
L: Implement binkp option ND.
|
L: Implement binkp option ND.
|
||||||
|
|
||||||
|
@ -190,8 +190,11 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f)
|
|||||||
* Area is in AREAS file, now create area.
|
* Area is in AREAS file, now create area.
|
||||||
* If needed, connect at uplink.
|
* If needed, connect at uplink.
|
||||||
*/
|
*/
|
||||||
if (SendUplink) {
|
if (SendUplink && SearchNode(fgroup.UpLink)) {
|
||||||
sprintf(temp, "+%s", tag);
|
if (nodes.UplFmgrBbbs)
|
||||||
|
sprintf(temp, "file +%s", tag);
|
||||||
|
else
|
||||||
|
sprintf(temp, "+%s", tag);
|
||||||
|
|
||||||
From = fido2faddr(fgroup.UseAka);
|
From = fido2faddr(fgroup.UseAka);
|
||||||
To = fido2faddr(fgroup.UpLink);
|
To = fido2faddr(fgroup.UpLink);
|
||||||
|
@ -126,8 +126,11 @@ int CheckEchoGroup(char *Area, int SendUplink, faddr *f)
|
|||||||
* Area is in AREAS file, now create area.
|
* Area is in AREAS file, now create area.
|
||||||
* If needed, connect at uplink.
|
* If needed, connect at uplink.
|
||||||
*/
|
*/
|
||||||
if (SendUplink) {
|
if (SendUplink && SearchNode(mgroup.UpLink)) {
|
||||||
sprintf(temp, "+%s", tag);
|
if (nodes.UplAmgrBbbs)
|
||||||
|
sprintf(temp, "echo +%s", tag);
|
||||||
|
else
|
||||||
|
sprintf(temp, "+%s", tag);
|
||||||
From = fido2faddr(mgroup.UseAka);
|
From = fido2faddr(mgroup.UseAka);
|
||||||
To = fido2faddr(mgroup.UpLink);
|
To = fido2faddr(mgroup.UpLink);
|
||||||
if (UplinkRequest(To, From, FALSE, temp)) {
|
if (UplinkRequest(To, From, FALSE, temp)) {
|
||||||
|
@ -550,7 +550,7 @@ int Areas(void)
|
|||||||
fseek(gp, mgrouphdr.hdrsize, SEEK_SET);
|
fseek(gp, mgrouphdr.hdrsize, SEEK_SET);
|
||||||
|
|
||||||
while ((fread(&mgroup, mgrouphdr.recsize, 1, gp)) == 1) {
|
while ((fread(&mgroup, mgrouphdr.recsize, 1, gp)) == 1) {
|
||||||
if (mgroup.Active && mgroup.AutoChange && strlen(mgroup.AreaFile)) {
|
if (mgroup.Active && mgroup.AutoChange && strlen(mgroup.AreaFile) && mgroup.UpLink.zone && SearchNode(mgroup.UpLink)) {
|
||||||
if (!do_quiet) {
|
if (!do_quiet) {
|
||||||
colour(CYAN, BLACK);
|
colour(CYAN, BLACK);
|
||||||
printf("\rEcho group %-12s ", mgroup.Name);
|
printf("\rEcho group %-12s ", mgroup.Name);
|
||||||
@ -633,10 +633,14 @@ int Areas(void)
|
|||||||
*/
|
*/
|
||||||
CheckEchoGroup(tmp->Name, FALSE, NULL);
|
CheckEchoGroup(tmp->Name, FALSE, NULL);
|
||||||
if (cmd == NULL) {
|
if (cmd == NULL) {
|
||||||
cmd = xstrcpy((char *)"+");
|
cmd = xstrcpy((char *)"");
|
||||||
} else {
|
} else {
|
||||||
cmd = xstrcat(cmd, (char *)"\r+");
|
cmd = xstrcat(cmd, (char *)"\r");
|
||||||
}
|
}
|
||||||
|
if (nodes.UplAmgrBbbs)
|
||||||
|
cmd = xstrcat(cmd, (char *)"echo +");
|
||||||
|
else
|
||||||
|
cmd = xstrcat(cmd, (char *)"+");
|
||||||
cmd = xstrcat(cmd, tmp->Name);
|
cmd = xstrcat(cmd, tmp->Name);
|
||||||
if (CFG.slow_util && do_quiet)
|
if (CFG.slow_util && do_quiet)
|
||||||
msleep(1);
|
msleep(1);
|
||||||
@ -692,9 +696,13 @@ int Areas(void)
|
|||||||
* Prepare uplink command
|
* Prepare uplink command
|
||||||
*/
|
*/
|
||||||
if (cmd == NULL)
|
if (cmd == NULL)
|
||||||
cmd = xstrcpy((char *)"-");
|
cmd = xstrcpy((char *)"");
|
||||||
else
|
else
|
||||||
cmd = xstrcat(cmd, (char *)"\r-");
|
cmd = xstrcat(cmd, (char *)"\r");
|
||||||
|
if (nodes.UplAmgrBbbs)
|
||||||
|
cmd = xstrcat(cmd, (char *)"echo -");
|
||||||
|
else
|
||||||
|
cmd = xstrcat(cmd, (char *)"-");
|
||||||
cmd = xstrcat(cmd, tmp->Name);
|
cmd = xstrcat(cmd, tmp->Name);
|
||||||
break;
|
break;
|
||||||
} else {
|
} else {
|
||||||
@ -710,19 +718,15 @@ int Areas(void)
|
|||||||
/*
|
/*
|
||||||
* Sent one uplink command with additions and deletions
|
* Sent one uplink command with additions and deletions
|
||||||
*/
|
*/
|
||||||
if (mgroup.UpLink.zone) {
|
From = fido2faddr(mgroup.UseAka);
|
||||||
From = fido2faddr(mgroup.UseAka);
|
To = fido2faddr(mgroup.UpLink);
|
||||||
To = fido2faddr(mgroup.UpLink);
|
if (UplinkRequest(To, From, FALSE, cmd)) {
|
||||||
if (UplinkRequest(To, From, FALSE, cmd)) {
|
WriteError("Uplink request failed");
|
||||||
WriteError("Uplink request failed");
|
|
||||||
} else {
|
|
||||||
Mgrlog("AreaMgr request sent to %s", aka2str(mgroup.UpLink));
|
|
||||||
}
|
|
||||||
tidy_faddr(From);
|
|
||||||
tidy_faddr(To);
|
|
||||||
} else {
|
} else {
|
||||||
Syslog('+', "No uplink defined, not sending a AreaMgr request");
|
Mgrlog("AreaMgr request sent to %s", aka2str(mgroup.UpLink));
|
||||||
}
|
}
|
||||||
|
tidy_faddr(From);
|
||||||
|
tidy_faddr(To);
|
||||||
free(cmd);
|
free(cmd);
|
||||||
cmd = NULL;
|
cmd = NULL;
|
||||||
}
|
}
|
||||||
@ -731,7 +735,7 @@ int Areas(void)
|
|||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fclose(gp);
|
fclose(gp);
|
||||||
}
|
}
|
||||||
@ -744,7 +748,7 @@ int Areas(void)
|
|||||||
fseek(gp, fgrouphdr.hdrsize, SEEK_SET);
|
fseek(gp, fgrouphdr.hdrsize, SEEK_SET);
|
||||||
|
|
||||||
while ((fread(&fgroup, fgrouphdr.recsize, 1, gp)) == 1) {
|
while ((fread(&fgroup, fgrouphdr.recsize, 1, gp)) == 1) {
|
||||||
if (fgroup.Active && fgroup.AutoChange && strlen(fgroup.AreaFile)) {
|
if (fgroup.Active && fgroup.AutoChange && strlen(fgroup.AreaFile) && fgroup.UpLink.zone && SearchNode(fgroup.UpLink)) {
|
||||||
if (!do_quiet) {
|
if (!do_quiet) {
|
||||||
colour(CYAN, BLACK);
|
colour(CYAN, BLACK);
|
||||||
printf("\r TIC group %-12s ", fgroup.Name);
|
printf("\r TIC group %-12s ", fgroup.Name);
|
||||||
@ -879,10 +883,14 @@ int Areas(void)
|
|||||||
*/
|
*/
|
||||||
CheckTicGroup(tmp->Name, FALSE, NULL);
|
CheckTicGroup(tmp->Name, FALSE, NULL);
|
||||||
if (cmd == NULL) {
|
if (cmd == NULL) {
|
||||||
cmd = xstrcpy((char *)"+");
|
cmd = xstrcpy((char *)"");
|
||||||
} else {
|
} else {
|
||||||
cmd = xstrcat(cmd, (char *)"\r+");
|
cmd = xstrcat(cmd, (char *)"\r");
|
||||||
}
|
}
|
||||||
|
if (nodes.UplFmgrBbbs)
|
||||||
|
cmd = xstrcat(cmd, (char *)"file +");
|
||||||
|
else
|
||||||
|
cmd = xstrcat(cmd, (char *)"+");
|
||||||
cmd = xstrcat(cmd, tmp->Name);
|
cmd = xstrcat(cmd, tmp->Name);
|
||||||
if (CFG.slow_util && do_quiet)
|
if (CFG.slow_util && do_quiet)
|
||||||
msleep(1);
|
msleep(1);
|
||||||
@ -919,9 +927,13 @@ int Areas(void)
|
|||||||
* Prepare uplink command
|
* Prepare uplink command
|
||||||
*/
|
*/
|
||||||
if (cmd == NULL)
|
if (cmd == NULL)
|
||||||
cmd = xstrcpy((char *)"-");
|
cmd = xstrcpy((char *)"");
|
||||||
else
|
else
|
||||||
cmd = xstrcat(cmd, (char *)"\r-");
|
cmd = xstrcat(cmd, (char *)"\r");
|
||||||
|
if (nodes.UplFmgrBbbs)
|
||||||
|
cmd = xstrcat(cmd, (char *)"file -");
|
||||||
|
else
|
||||||
|
cmd = xstrcat(cmd, (char *)"-");
|
||||||
cmd = xstrcat(cmd, tmp->Name);
|
cmd = xstrcat(cmd, tmp->Name);
|
||||||
}
|
}
|
||||||
fseek(fp, tichdr.syssize, SEEK_CUR);
|
fseek(fp, tichdr.syssize, SEEK_CUR);
|
||||||
@ -968,19 +980,15 @@ int Areas(void)
|
|||||||
/*
|
/*
|
||||||
* Sent one uplink command with additions and deletions
|
* Sent one uplink command with additions and deletions
|
||||||
*/
|
*/
|
||||||
if (fgroup.UpLink.zone) {
|
From = fido2faddr(fgroup.UseAka);
|
||||||
From = fido2faddr(fgroup.UseAka);
|
To = fido2faddr(fgroup.UpLink);
|
||||||
To = fido2faddr(fgroup.UpLink);
|
if (UplinkRequest(To, From, TRUE, cmd)) {
|
||||||
if (UplinkRequest(To, From, TRUE, cmd)) {
|
WriteError("Uplink request failed");
|
||||||
WriteError("Uplink request failed");
|
|
||||||
} else {
|
|
||||||
Mgrlog("FileMgr request sent to %s", aka2str(fgroup.UpLink));
|
|
||||||
}
|
|
||||||
tidy_faddr(From);
|
|
||||||
tidy_faddr(To);
|
|
||||||
} else {
|
} else {
|
||||||
Syslog('+', "No uplink defined, not sending a FileMgr request");
|
Mgrlog("FileMgr request sent to %s", aka2str(fgroup.UpLink));
|
||||||
}
|
}
|
||||||
|
tidy_faddr(From);
|
||||||
|
tidy_faddr(To);
|
||||||
free(cmd);
|
free(cmd);
|
||||||
cmd = NULL;
|
cmd = NULL;
|
||||||
}
|
}
|
||||||
|
@ -1565,8 +1565,6 @@ int node_doc(FILE *fp, FILE *toc, int page)
|
|||||||
add_webtable(wp, (char *)" Advanded SB lines in .TIC", getboolean(nodes.TIC_AdvSB));
|
add_webtable(wp, (char *)" Advanded SB lines in .TIC", getboolean(nodes.TIC_AdvSB));
|
||||||
fprintf(fp, " Sent To line %s", getboolean(nodes.TIC_To));
|
fprintf(fp, " Sent To line %s", getboolean(nodes.TIC_To));
|
||||||
add_webtable(wp, (char *)"Sent 'To' lines in .TIC", getboolean(nodes.TIC_To));
|
add_webtable(wp, (char *)"Sent 'To' lines in .TIC", getboolean(nodes.TIC_To));
|
||||||
fprintf(fp, " Uplink add + %s\n", getboolean(nodes.AddPlus));
|
|
||||||
add_webtable(wp, (char *)" Uplink add +", getboolean(nodes.AddPlus));
|
|
||||||
fprintf(fp, " Security flags %s\n\n", getflag(nodes.Security.flags, nodes.Security.notflags));
|
fprintf(fp, " Security flags %s\n\n", getflag(nodes.Security.flags, nodes.Security.notflags));
|
||||||
add_webtable(wp, (char *)"Security flags", getflag(nodes.Security.flags, nodes.Security.notflags));
|
add_webtable(wp, (char *)"Security flags", getflag(nodes.Security.flags, nodes.Security.notflags));
|
||||||
fprintf(wp, "<TR><TD colspan='2'> </TD></TR>\n");
|
fprintf(wp, "<TR><TD colspan='2'> </TD></TR>\n");
|
||||||
|
Reference in New Issue
Block a user