diff --git a/ChangeLog b/ChangeLog index 456f1257..8d462a0d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -47,6 +47,8 @@ v0.71.3 13-Jun-2005 When message areas are autocreated, golded.inc and msg.txt are recreated for the external editors. The web stats can now limit the size of mailhistory.html + The FileMgr command connects news nodes SR if set for the tic + area. mbmon: Made Internet BBS Chat final. @@ -66,6 +68,8 @@ v0.71.3 13-Jun-2005 logfile. If defined then downloads via www and or ftp can be counted. Dropped support for file areas on CDrom. + In menu 10 added a switch to default connect downlinks SR + instead if S. v0.71.2 16-Jan-2005 - 13-Jun-2005 diff --git a/TODO b/TODO index 254d4005..4ababf65 100644 --- a/TODO +++ b/TODO @@ -97,8 +97,6 @@ mbfido: N: Implement areamgr/filemgr %avail command to list available areas from areas files. - N: Add switch to tic areas that new links connect SR to the area. - N: Someday make retoss from bad possible (volonteers?). mbcico: diff --git a/mbfido/createf.c b/mbfido/createf.c index 1fdf56d9..f760a6ae 100644 --- a/mbfido/createf.c +++ b/mbfido/createf.c @@ -4,7 +4,7 @@ * Purpose ...............: Create TIC Area and BBS file area. * ***************************************************************************** - * Copyright (C) 1997-2004 + * Copyright (C) 1997-2005 * * Michiel Broek FIDO: 2:280/2802 * Beekmansbos 10 @@ -179,7 +179,7 @@ int CheckTicGroup(char *Area, int SendUplink, faddr *f) } /* - * Some peaple write taglists with lowercase tagnames... + * Some people write taglists with lowercase tagnames... */ for (i = 0; i < strlen(tag); i++) tag[i] = toupper(tag[i]); diff --git a/mbfido/filemgr.c b/mbfido/filemgr.c index b51eff7c..70399cff 100644 --- a/mbfido/filemgr.c +++ b/mbfido/filemgr.c @@ -547,6 +547,8 @@ void F_Connect(faddr *t, char *Area, FILE *tmp) memset(&Sys, 0, sizeof(Sys)); memcpy(&Sys.aka, faddr2fido(t), sizeof(fidoaddr)); Sys.sendto = TRUE; + if (tic.NewSR) + Sys.receivefrom = TRUE; if (TicSystemConnected(Sys)) { MacroVars("SsP", "sss", CFG.sysop_name, nodes.Sysop,"Filemgr"); @@ -657,6 +659,8 @@ void F_All(faddr *t, int Connect, FILE *tmp, char *Grp) memset(&Sys, 0, sizeof(Sys)); memcpy(&Sys.aka, faddr2fido(t), sizeof(fidoaddr)); Sys.sendto = TRUE; + if (tic.NewSR) + Sys.receivefrom = TRUE; fseek(fp, - sizeof(Sys), SEEK_CUR); fwrite(&Sys, sizeof(Sys), 1, fp); Mgrlog("FileMgr: Connected %s", tic.Name); diff --git a/mbsetup/m_ticarea.c b/mbsetup/m_ticarea.c index 90bc8e14..e65079d9 100644 --- a/mbsetup/m_ticarea.c +++ b/mbsetup/m_ticarea.c @@ -272,57 +272,59 @@ int AppendTicarea(void) void EditTicSystem(sysconnect *); void EditTicSystem(sysconnect *Sys) { - sysconnect S; - unsigned short zone = 0; - int refresh = TRUE; + sysconnect S; + unsigned short zone = 0; + int refresh = TRUE; - S = (* Sys); - for (;;) { - if (refresh) { - clr_index(); - set_color(WHITE, BLACK); - mbse_mvprintw( 5,6, "10.2.26 EDIT CONNECTION"); - set_color(CYAN, BLACK); - mbse_mvprintw( 7,6, "1. Aka"); - mbse_mvprintw( 8,6, "2. Send to"); - mbse_mvprintw( 9,6, "3. Recv from"); - mbse_mvprintw(10,6, "4. Pause"); - mbse_mvprintw(11,6, "5. Delete"); - refresh = FALSE; - } - - set_color(WHITE, BLACK); - show_str( 7,24,23, aka2str(S.aka)); - show_bool( 8,24, S.sendto); - show_bool( 9,24, S.receivefrom); - show_bool(10,24, S.pause); - zone = S.aka.zone; - - switch(select_menu(5)) { - case 0: (* Sys) = S; - return; - case 1: S.aka = PullUplink((char *)"10.2.26"); - refresh = TRUE; - break; - case 2: E_BOOL( 8,24, S.sendto, "^Send^ files ^to^ this node") - case 3: E_BOOL( 9,24, S.receivefrom, "^Receive^ files ^from^ this node") - case 4: E_BOOL(10,24, S.pause, "Is this node ^paused^") - case 5: if (yes_no((char *)"Delete this entry")) { - memset(&S, 0, sizeof(sysconnect)); - (* Sys) = S; - return; - } - break; - } - - /* - * Set sendto to on when a new - * zone is entered. - */ - if ((S.aka.zone) && (!zone)) { - S.sendto = 1; - } + S = (* Sys); + for (;;) { + if (refresh) { + clr_index(); + set_color(WHITE, BLACK); + mbse_mvprintw( 5,6, "10.2.27 EDIT CONNECTION"); + set_color(CYAN, BLACK); + mbse_mvprintw( 7,6, "1. Aka"); + mbse_mvprintw( 8,6, "2. Send to"); + mbse_mvprintw( 9,6, "3. Recv from"); + mbse_mvprintw(10,6, "4. Pause"); + mbse_mvprintw(11,6, "5. Delete"); + refresh = FALSE; } + + set_color(WHITE, BLACK); + show_str( 7,24,23, aka2str(S.aka)); + show_bool( 8,24, S.sendto); + show_bool( 9,24, S.receivefrom); + show_bool(10,24, S.pause); + zone = S.aka.zone; + + switch(select_menu(5)) { + case 0: (* Sys) = S; + return; + case 1: S.aka = PullUplink((char *)"10.2.27"); + refresh = TRUE; + break; + case 2: E_BOOL( 8,24, S.sendto, "^Send^ files ^to^ this node") + case 3: E_BOOL( 9,24, S.receivefrom, "^Receive^ files ^from^ this node") + case 4: E_BOOL(10,24, S.pause, "Is this node ^paused^") + case 5: if (yes_no((char *)"Delete this entry")) { + memset(&S, 0, sizeof(sysconnect)); + (* Sys) = S; + return; + } + break; + } + + /* + * Set sendto to on when a new + * zone is entered. + */ + if ((S.aka.zone) && (!zone)) { + S.sendto = 1; + if (tic.NewSR) + S.receivefrom = 1; + } + } } @@ -341,7 +343,7 @@ int EditTicConnections(FILE *fil) for (;;) { clr_index(); set_color(WHITE, BLACK); - mbse_mvprintw( 5, 5, "10.2.26 TIC AREA CONNECTIONS"); + mbse_mvprintw( 5, 5, "10.2.27 TIC AREA CONNECTIONS"); set_color(CYAN, BLACK); y = 7; x = 2; @@ -435,10 +437,11 @@ void SetTicScreen(void) mbse_mvprintw( 9,60, "20. Send org."); mbse_mvprintw(10,60, "21. Mandatory"); mbse_mvprintw(11,60, "22. Notified"); - mbse_mvprintw(12,60, "23. Upl discon"); + mbse_mvprintw(12,60, "23. Upl disc."); mbse_mvprintw(13,60, "24. Deleted"); mbse_mvprintw(14,60, "25. Active"); - mbse_mvprintw(15,60, "26. Systems"); + mbse_mvprintw(15,60, "26. New SR"); + mbse_mvprintw(16,60, "27. Systems"); } @@ -865,15 +868,17 @@ int EditTicRec(int Area) show_bool(12,74, tic.UplDiscon); show_bool(13,74, tic.Deleted); show_bool(14,74, tic.Active); + show_bool(15,74, tic.NewSR); + fseek(ttfil, 0, SEEK_SET); connections = 0; while (fread(&System, sizeof(System), 1, ttfil) == 1) { if (System.aka.zone) connections++; } - show_int( 15,74, connections); + show_int( 16,74, connections); - switch(select_menu(26)) { + switch(select_menu(27)) { case 0: crc1 = 0xffffffff; crc1 = upd_crc32((char *)&tic, crc1, tichdr.recsize); @@ -978,7 +983,8 @@ int EditTicRec(int Area) case 23:E_BOOL(12,74, tic.UplDiscon, "Is the uplink ^disconnected^ from this area"); case 24:E_BOOL(13,74, tic.Deleted, "Is this area ^deleted^"); case 25:E_BOOL(14,74, tic.Active, "Is this area ^active^"); - case 26:if (EditTicConnections(ttfil)) + case 26:E_BOOL(15,74, tic.NewSR, "Give new connected nodes the status ^SR^ instead of ^R^"); + case 27:if (EditTicConnections(ttfil)) changed = TRUE; SetTicScreen(); break; @@ -1328,6 +1334,7 @@ int tic_areas_doc(FILE *fp, FILE *toc, int page) add_webtable(wp, (char *)"Announce files", getboolean(tic.Announce)); add_webtable(wp, (char *)"Update magic name", getboolean(tic.UpdMagic)); add_webtable(wp, (char *)"Get FILE_ID.DIZ", getboolean(tic.FileId)); + add_webtable(wp, (char *)"New link SR status", getboolean(tic.NewSR)); add_webtable(wp, (char *)"Mandatory area", getboolean(tic.Mandat)); add_webtable(wp, (char *)"Uplink disconnect", getboolean(tic.UplDiscon)); add_webtable(wp, (char *)"Notified uplink", getboolean(tic.Notified)); @@ -1361,6 +1368,7 @@ int tic_areas_doc(FILE *fp, FILE *toc, int page) fprintf(fp, " Announce %s\n", getboolean(tic.Announce)); fprintf(fp, " Upd. magic %s\n", getboolean(tic.UpdMagic)); fprintf(fp, " FILE_ID.DIZ %s\n", getboolean(tic.FileId)); + fprintf(fp, " New link SR %s\n", getboolean(tic.NewSR)); fprintf(fp, " Mandatory %s\n", getboolean(tic.Mandat)); fprintf(fp, " Upl. discon %s\n", getboolean(tic.UplDiscon)); fprintf(fp, " Notified %s\n\n", getboolean(tic.Notified));