diff --git a/lang/Language.xref b/lang/Language.xref index f2dfa9d4..7e1f5a4e 100644 --- a/lang/Language.xref +++ b/lang/Language.xref @@ -470,3 +470,8 @@ 469 email.c |trash - Trashcan, your old email 470 email.c |Area # 471 funcs.c |minutes. +472 change.c |Fullscreen Editor shortcut keys set to Emacs +473 change.c |Fullscreen Editor shortcut keys set to Wordstar +474 newuser.c change.c |Your address, maximum 3 lines (only visible for the sysop): +475 newuser.c change.c |You need to enter your address here +476 change.c |Old address: diff --git a/lang/dutch.txt b/lang/dutch.txt index acf3a3f0..bad17a15 100644 --- a/lang/dutch.txt +++ b/lang/dutch.txt @@ -339,7 +339,7 @@ JN|Bekijk dit BBS? [J/n]: |Totaal aantal berichten gevonden: |Onbekend menu kommando! |Bewaren ... -|MBSE BBS Spreuken kunne willekeurig verschijnen. +|MBSE BBS Spreuken kunnen willekeurig verschijnen. |Obscene en racistische opmerkingen worden verwijderd!! |Geef hieronder Uw spreuk. U heeft 75 karakters. |Spreuk toegevoegd @@ -470,3 +470,8 @@ JN|Bestand meesturen [j/N]: |trash - De vuilnisbak, oude email. |Gebied # |minuten. +|Schermgestuurde Tekstverwerker sneltoetsen ingesteld als Emacs +|Schermgestuurde Tekstverwerker sneltoetsen ingesteld als Wordstar +|Geef adres, maximaal 3 regels (alleen zichtbaar voor de sysop): +|U moet hier Uw adres opgeven +|Oude adres: diff --git a/lang/english.txt b/lang/english.txt index 6b757bb5..9cbc839c 100644 --- a/lang/english.txt +++ b/lang/english.txt @@ -69,7 +69,7 @@ YN|Would you like Hot-Keyed menus? [Y/n]: |Login Name : |Password : |not displayed -|Login to the BBS with the above name +|New user registration completed. |Could not find |Old Location: |Please enter a longer location (min @@ -470,3 +470,8 @@ YN|Attach file [y/N]: |trash - Trashcan, your old email |Area # |minutes. +|Fullscreen Editor shortcut keys set to Emacs +|Fullscreen Editor shortcut keys set to Wordstar +|Your address, maximum 3 lines (only visible for the sysop): +|You need to enter your address here +|Old address: diff --git a/lang/galego.txt b/lang/galego.txt index 3f5e8fb6..aed6fac9 100644 --- a/lang/galego.txt +++ b/lang/galego.txt @@ -69,7 +69,7 @@ SN| |Nome de Login : |Password : |non visualizable -|Podes entrar na BBS co devandito nome +|New user registration completed. |Non topo |Localidade anterior : |Localidade demasiado curta: (min. @@ -470,3 +470,8 @@ YN|Adxuntar ficheiro [s/N]: |papeleira - Papeleira, Email borrado |Area # |minutos. +|Fullscreen Editor shortcut keys set to Emacs +|Fullscreen Editor shortcut keys set to Wordstar +|Your address, maximum 3 lines (only visible for the sysop): +|You need to enter your address here +|Old address: diff --git a/lang/italian.txt b/lang/italian.txt index 2fbb93ac..15e05881 100644 --- a/lang/italian.txt +++ b/lang/italian.txt @@ -69,7 +69,7 @@ SN|Vuoi abilitare le Hot-Key? [S/n]: |Nome utente : |Password : |riservato -|Loggati nella BBS usando il nome utente sopra riportato. +|New user registration completed. |Non trovo |Vecchia Localita': |Per favore inserisci un nome piu' lungo (almeno @@ -470,3 +470,8 @@ SN|Allega file [s/N]: |trash - Cestino, la tua posta vecchia |Area # |minuti. +|Fullscreen Editor shortcut keys set to Emacs +|Fullscreen Editor shortcut keys set to Wordstar +|Your address, maximum 3 lines (only visible for the sysop): +|You need to enter your address here +|Old address: diff --git a/lang/spanish.txt b/lang/spanish.txt index bca763ae..857876b0 100644 --- a/lang/spanish.txt +++ b/lang/spanish.txt @@ -69,7 +69,7 @@ SN| |Nombre de Login : |Password : |no visualizable -|Puedes entrar en la BBS con el nombre anterior +|New user registration completed. |No encuentro |Localidad anterior : |Localidad demasiado corta: (min. @@ -470,3 +470,8 @@ YN|Adjuntar fichero [s/N]: |papelera - Papelera, Email borrado |Area # |minutos. +|Fullscreen Editor shortcut keys set to Emacs +|Fullscreen Editor shortcut keys set to Wordstar +|Your address, maximum 3 lines (only visible for the sysop): +|You need to enter your address here +|Old address: diff --git a/lib/structs.h b/lib/structs.h index 4c446e0e..ffbec32f 100644 --- a/lib/structs.h +++ b/lib/structs.h @@ -2,7 +2,7 @@ * * File ..................: structs.h * Purpose ...............: MBSE BBS Global structure - * Last modification date : 24-Oct-2001 + * Last modification date : 26-Oct-2001 * ***************************************************************************** * Copyright (C) 1997-2001 @@ -343,10 +343,10 @@ struct userrec { int iTimeUsed; /* Time used today */ int iScreenLen; /* User Screen Length */ time_t tLastPwdChange; /* Date last password chg */ - unsigned iHangUps; /* Total improper hangups */ + unsigned xHangUps; long Credit; /* Users credit */ int Paged; /* Times paged today */ - int OfflineFmt; /* Offline Reader format */ + int xOfflineFmt; int LastPktNum; /* Todays Last packet number*/ char Archiver[6]; /* Archiver to use */ @@ -571,6 +571,7 @@ struct lastcallers { unsigned Wrote : 1; /* If wrote a message */ unsigned Chat : 1; /* If did chat */ unsigned Olr : 1; /* If used Offline Reader */ + unsigned Door : 1; /* If used a Door */ char Location[28]; /* User Location */ }; diff --git a/mbfido/ftn2rfc.c b/mbfido/ftn2rfc.c index 6dc00a79..66624429 100644 --- a/mbfido/ftn2rfc.c +++ b/mbfido/ftn2rfc.c @@ -2,6 +2,7 @@ * * File ..................: mbfido/ftn2rfc.c * Purpose ...............: Gate netmail->email or echomail->news + * Last modification date : 29-Oct-2001 * Last modification date : 30-Oct-2001 * ***************************************************************************** diff --git a/mbmon/mbmon.c b/mbmon/mbmon.c index 3d2773b9..f217a9c8 100644 --- a/mbmon/mbmon.c +++ b/mbmon/mbmon.c @@ -2,9 +2,8 @@ * * File ..................: mbmon/mbmon.c * Purpose ...............: Monitor Program - * Last modification date : 11-Aug-2001 - * Todo ..................: Trace logfiles - * Chat with user via server + * Last modification date : 26-Oct-2001 + * Todo ..................: Chat with user via server * ***************************************************************************** * Copyright (C) 1997-2001 @@ -35,10 +34,7 @@ #include "common.h" #include "mutil.h" - -extern char *version; -extern char *copyright; - +#define Copyright "Copyright (C) 1997-2001 Michiel Broek, All Rights Reserved" static void die(int onsig) @@ -61,7 +57,7 @@ void ShowSysinfo(void) clr_index(); set_color(WHITE, BLACK); - mvprintw( 5, 6, "5. SHOW BBS SYSTEM INFO"); + mvprintw( 5, 6, "4. SHOW BBS SYSTEM INFO"); set_color(CYAN, BLACK); mvprintw( 7, 6, "1. Total calls"); mvprintw( 8, 6, "2. Pots calls"); @@ -104,9 +100,9 @@ void ShowLastcaller(void) clr_index(); set_color(WHITE, BLACK); - mvprintw( 4, 6, "6. SHOW BBS LASTCALLERS"); + mvprintw( 4, 6, "5. SHOW BBS LASTCALLERS"); set_color(YELLOW, RED); - mvprintw( 6, 1, "Nr Username Location Level Device Time Mins Calls Speed Actions"); + mvprintw( 6, 1, "Nr Username Location Level Device Time Mins Calls Speed Actions "); set_color(CYAN, BLACK); center_addstr(LINES - 4, (char *)"Press any key"); IsDoing("View Lastcallers"); @@ -126,7 +122,7 @@ void ShowLastcaller(void) if (records) { y = 7; if (records > 10) - o = records -10; + o = records - 10; else o = 1; set_color(CYAN, BLACK); @@ -136,16 +132,23 @@ void ShowLastcaller(void) sprintf(buf, "%s", socket_receive()); if (strncmp(buf, "100:9,", 6) == 0) { cnt = strtok(buf, ","); + if (records > 10) { + /* + * Only clear line if there's a change to scroll + */ + locate(y, 1); + clrtoeol(); + } mvprintw(y, 1, "%2d", i); mvprintw(y, 4, "%s", strtok(NULL, ",")); mvprintw(y,19, "%s", strtok(NULL, ",")); mvprintw(y,32, "%s", strtok(NULL, ",")); mvprintw(y,38, "%s", strtok(NULL, ",")); - mvprintw(y,45, "%s", str_time(atoi(strtok(NULL, ",")))); - mvprintw(y,52, "%s", strtok(NULL, ",")); - mvprintw(y,57, "%s", strtok(NULL, ",")); - mvprintw(y,63, "%s", strtok(NULL, ",")); - mvprintw(y,73, "%s", strtok(NULL, ";")); + mvprintw(y,45, "%s", strtok(NULL, ",")); + mvprintw(y,51, "%s", strtok(NULL, ",")); + mvprintw(y,56, "%s", strtok(NULL, ",")); + mvprintw(y,62, "%s", strtok(NULL, ",")); + mvprintw(y,72, "%s", strtok(NULL, ";")); y++; } } @@ -364,22 +367,37 @@ void disk_stat(void) void soft_info(void) { + char temp[81]; + clr_index(); set_color(YELLOW, BLACK); #ifdef __linux__ - center_addstr( 7, (char *)"MBSE BBS (Linux)"); + center_addstr( 6, (char *)"MBSE BBS (Linux)"); #elif __FreeBSD__ - center_addstr( 7, (char *)"MBSE BBS (FreeBSD)"); + center_addstr( 6, (char *)"MBSE BBS (FreeBSD)"); #else - center_addstr( 7, (char *)"MBSE BBS (Unknown)"); + center_addstr( 6, (char *)"MBSE BBS (Unknown)"); #endif set_color(WHITE, BLACK); - center_addstr( 9, (char *)"(c) Michiel Broek"); + center_addstr( 8, (char *)Copyright); set_color(YELLOW, BLACK); - center_addstr(11, (char *)"Made in the Netherlands"); + center_addstr(10, (char *)"Made in the Netherlands."); + set_color(WHITE, BLACK); +#ifdef __GLIBC__ + sprintf(temp, "Compiled on glibc v%d.%d", __GLIBC__, __GLIBC_MINOR__); +#else +#ifdef __GNU_LIBRARY__ + sprintf(temp, "Compiled on libc v%d", __GNU_LIBRARY__); +#else + sprintf(temp, "Compiled on unknown library"); +#endif +#endif + center_addstr(12, temp); + set_color(LIGHTCYAN, BLACK); + center_addstr(14, (char *)"http://mbse.sourceforge.net or 2:280/2802"); set_color(LIGHTGREEN, BLACK); - center_addstr(LINES -8, (char *)"This is free software; released under the terms of the GNU General"); - center_addstr(LINES -7, (char *)"Public License as published by the Free Software Foundation."); + center_addstr(LINES -7, (char *)"This is free software; released under the terms of the GNU General"); + center_addstr(LINES -6, (char *)"Public License as published by the Free Software Foundation."); set_color(CYAN, BLACK); center_addstr(LINES -4, (char *)"Press any key"); readkey(LINES - 4, COLS / 2 + 8, LIGHTGRAY, BLACK); @@ -424,12 +442,11 @@ int main(int argc, char *argv[]) mvprintw( 7, 6, "1. View Server Clients"); mvprintw( 8, 6, "2. View Server Statistics"); mvprintw( 9, 6, "3. View Filesystem Usage"); - mvprintw(10, 6, "4. View System Logfiles"); - mvprintw(11, 6, "5. View BBS System Information"); - mvprintw(12, 6, "6. View BBS Lastcallers List"); - mvprintw(13, 6, "7. View Software Information"); + mvprintw(10, 6, "4. View BBS System Information"); + mvprintw(11, 6, "5. View BBS Lastcallers List"); + mvprintw(12, 6, "6. View Software Information"); - switch(select_menu(7)) { + switch(select_menu(6)) { case 0: die(0); break; @@ -442,13 +459,13 @@ int main(int argc, char *argv[]) case 3: disk_stat(); break; - case 5: + case 4: ShowSysinfo(); break; - case 6: + case 5: ShowLastcaller(); break; - case 7: + case 6: soft_info(); break; } diff --git a/mbsebbs/mbsebbs.c b/mbsebbs/mbsebbs.c index a32cfd72..893ecd16 100644 --- a/mbsebbs/mbsebbs.c +++ b/mbsebbs/mbsebbs.c @@ -2,7 +2,7 @@ * * File ..................: mbsebbs/mbsebbs.c * Purpose ...............: Main startup - * Last modification date : 22-Oct-2001 + * Last modification date : 27-Oct-2001 * ***************************************************************************** * Copyright (C) 1997-2001 @@ -197,9 +197,9 @@ int main(int argc, char **argv) clear(); DisplayLogo(); - colour(14, 0); + colour(YELLOW, BLACK); printf("MBSE BBS v%s (Release: %s)\n", VERSION, ReleaseDate); - colour(15, 0); + colour(WHITE, BLACK); printf("%s\n\n", Copyright); /* @@ -230,9 +230,9 @@ int main(int argc, char **argv) /* * Ask whether to display Connect String */ - if(CFG.iConnectString) { + if (CFG.iConnectString) { /* Connected on port */ - colour(3, 0); + colour(CYAN, BLACK); printf("%s\"%s\" ", (char *) Language(348), ttyinfo.comment); /* on */ printf("%s %s\n", (char *) Language(135), ctime(<ime)); @@ -240,7 +240,7 @@ int main(int argc, char **argv) } sprintf(sMailbox, "mailbox"); - colour(7, 0); + colour(LIGHTGRAY, BLACK); Passwd = calloc(16, sizeof(char)); user(); return 0; diff --git a/mbsebbs/newuser.c b/mbsebbs/newuser.c index c4b8cd39..f4eb042c 100644 --- a/mbsebbs/newuser.c +++ b/mbsebbs/newuser.c @@ -3,7 +3,7 @@ * File ..................: mbsebbs/newuser.c * Purpose ...............: New User login under Unix, creates both * BBS and unix accounts. - * Last modification date : 28-Jun-2001 + * Last modification date : 27-Oct-2001 * ***************************************************************************** * Copyright (C) 1997-2001 @@ -74,7 +74,7 @@ int newuser(char *FullName) Enter(1); /* MBSE BBS - NEW USER REGISTRATION */ - language(3, 0, 37); + language(CYAN, BLACK, 37); Enter(2); Syslog('+', "Name entered: %s", FullName); @@ -95,7 +95,7 @@ int newuser(char *FullName) alarm_on(); Enter(1); /* Use this name: */ - language(14, 0, 38); + language(YELLOW, BLACK, 38); printf("%s [Y/n]? ", FullName); fflush(stdout); fflush(stdin); @@ -108,7 +108,7 @@ int newuser(char *FullName) Syslog('+', "User chose to use a different name"); Enter(1); /* Please enter your First and Last name: */ - language(3, 0, 0); + language(CYAN, BLACK, 0); fflush(stdout); alarm_on(); Getname(temp, 35); @@ -132,21 +132,21 @@ int newuser(char *FullName) /* Please enter your BBS password, this can be the same as the unix password */ printf("%s\n\n", (char *) Language(388)); /* Please enter new password : */ - language(11, 0, 39); + language(LIGHTCYAN, BLACK, 39); fflush(stdout); alarm_on(); Getpass(temp1); if((x = strlen(temp1)) >= CFG.password_length) { Enter(1); /* Please enter password again : */ - language(11, 0, 40); + language(LIGHTCYAN, BLACK, 40); fflush(stdout); alarm_on(); Getpass(temp2); if((i = strcmp(temp1,temp2)) != 0) { Enter(2); /* Your passwords do not match! Try again. */ - language(12, 0, 41); + language(LIGHTRED, BLACK, 41); Enter(1); } else { crc = StringCRC32(tu(temp1)); @@ -155,10 +155,10 @@ int newuser(char *FullName) } else { Enter(2); /* Your password must contain at least */ - language(12, 0, 42); + language(LIGHTRED, BLACK, 42); printf("%d ", CFG.password_length); /* characters! Try again. */ - language(15, 0, 43); + language(WHITE, BLACK, 43); Enter(1); } } @@ -181,7 +181,7 @@ int newuser(char *FullName) if(CFG.iAnsi) { Enter(2); /* Do you want ANSI and graphics mode [Y/n]: */ - language(7, 0, 44); + language(LIGHTGRAY, BLACK, 44); alarm_on(); i = toupper(getchar()); @@ -201,10 +201,10 @@ int newuser(char *FullName) while (1) { Enter(1); /* Please enter you Voice Number */ - language(10, 0, 45); + language(LIGHTGREEN, BLACK, 45); Enter(1); - pout(10, 0, (char *)": "); + pout(LIGHTGREEN, BLACK, (char *)": "); colour(CFG.InputColourF, CFG.InputColourB); fflush(stdout); alarm_on(); @@ -212,7 +212,8 @@ int newuser(char *FullName) if (strlen(temp) < 6) { Enter(1); - language(12, 0, 47); + /* Please enter a proper phone number */ + language(LIGHTRED, BLACK, 47); Enter(1); } else { strcpy(usrconfig.sVoicePhone, temp); @@ -226,10 +227,10 @@ int newuser(char *FullName) while (TRUE) { Enter(1); /* Please enter you Data Number */ - language(10, 0, 48); + language(LIGHTGREEN, BLACK, 48); Enter(1); - pout(10, 0, (char *)": "); + pout(LIGHTGREEN, BLACK, (char *)": "); colour(CFG.InputColourF, CFG.InputColourB); alarm_on(); GetPhone(temp, 16); @@ -245,7 +246,7 @@ int newuser(char *FullName) if( strlen(temp) < 6) { Enter(1); /* Please enter a proper phone number */ - language(12, 0, 47); + language(LIGHTRED, BLACK, 47); Enter(1); } else { strcpy(usrconfig.sDataPhone, temp); @@ -261,10 +262,11 @@ int newuser(char *FullName) if (ieLogin && (strlen(ieLocation) >= CFG.CityLen) && (strlen(ieLocation) < 24)) { strcpy(usrconfig.sLocation, ieLocation); } else { + if (CFG.iLocation) { while (TRUE) { Enter(1); /* Enter your location */ - pout(14, 0, (char *) Language(49)); + pout(YELLOW, BLACK, (char *) Language(49)); colour(CFG.InputColourF, CFG.InputColourB); alarm_on(); if (CFG.iCapLocation) { /* Cap Location is turn on, Capitalise first letter */ @@ -276,7 +278,7 @@ int newuser(char *FullName) if( strlen(temp) < CFG.CityLen) { Enter(1); /* Please enter a longer location */ - language(12, 0, 50); + language(LIGHTRED, BLACK, 50); Enter(1); printf("%s%d)", (char *) Language(74), CFG.CityLen); Enter(1); @@ -286,12 +288,36 @@ int newuser(char *FullName) break; } } + } } - if(CFG.iHandle) { + if (CFG.AskAddress) { + while (TRUE) { + Enter(1); + /* Your address, maximum 3 lines (only visible for the sysop): */ + pout(LIGHTMAGENTA, BLACK, (char *)Language(474)); + Enter(1); + for (i = 0; i < 3; i++) { + colour(YELLOW, BLACK); + printf("%d: ", i+1); + colour(CFG.InputColourF, CFG.InputColourB); + fflush(stdout); + alarm_on(); + GetstrC(usrconfig.address[i], 40); + } + if (strlen(usrconfig.address[0]) || strlen(usrconfig.address[1]) || strlen(usrconfig.address[2])) + break; + Enter(1); + /* You need to enter your address here */ + pout(LIGHTRED, BLACK, (char *)Language(475)); + Enter(1); + } + } + + if (CFG.iHandle) { Enter(1); /* Enter a handle (Enter to Quit): */ - pout(12, 0, (char *) Language(412)); + pout(LIGHTRED, BLACK, (char *) Language(412)); colour(CFG.InputColourF, CFG.InputColourB); fflush(stdout); alarm_on(); @@ -310,7 +336,7 @@ int newuser(char *FullName) while (TRUE) { Enter(1); /* What is your sex? (M)ale or (F)emale: */ - language(9, 0, 51); + language(LIGHTBLUE, BLACK, 51); colour(CFG.InputColourF, CFG.InputColourB); fflush(stdout); alarm_on(); @@ -332,7 +358,7 @@ int newuser(char *FullName) } else { Enter(2); /* Please answer M or F */ - language(12, 0, 54); + language(LIGHTRED, BLACK, 54); Enter(1); } } @@ -342,7 +368,7 @@ int newuser(char *FullName) while (TRUE) { Enter(1); /* Please enter your Date of Birth DD-MM-YYYY: */ - pout(3, 0, (char *) Language(56)); + pout(CYAN, BLACK, (char *) Language(56)); colour(CFG.InputColourF, CFG.InputColourB); fflush(stdout); alarm_on(); @@ -358,13 +384,13 @@ int newuser(char *FullName) if ((strcmp(temp1,temp2)) == 0) { Enter(1); /* Sorry you entered this year by mistake. */ - pout(12, 0, (char *) Language(57)); + pout(LIGHTRED, BLACK, (char *) Language(57)); Enter(1); } else if((strlen(temp)) != 10) { Enter(1); /* Please enter the correct date format */ - pout(12, 0, (char *) Language(58)); + pout(LIGHTRED, BLACK, (char *) Language(58)); Enter(1); } else { strcpy(usrconfig.sDateOfBirth,temp); @@ -386,7 +412,7 @@ int newuser(char *FullName) while (TRUE) { Enter(1); /* Would you like hot-keyed menus [Y/n]: */ - pout(12, 0, (char *) Language(62)); + pout(LIGHTRED, BLACK, (char *) Language(62)); colour(CFG.InputColourF, CFG.InputColourB); alarm_on(); GetstrC(temp, 8); @@ -400,7 +426,7 @@ int newuser(char *FullName) break; } else { /* Please answer Y or N */ - pout(15, 0, (char *) Language(63)); + pout(WHITE, BLACK, (char *) Language(63)); } } } /* End of if Statement */ @@ -415,7 +441,7 @@ int newuser(char *FullName) usrconfig.iScreenLen = ieRows; else { /* Please enter your Screen Length [24]: */ - pout(13, 0, (char *) Language(64)); + pout(LIGHTMAGENTA, BLACK, (char *) Language(64)); colour(CFG.InputColourF, CFG.InputColourB); fflush(stdout); alarm_on(); @@ -473,19 +499,19 @@ int newuser(char *FullName) Enter(2); /* Your user account has been created: */ - pout(14, 0, (char *) Language(67)); + pout(YELLOW, BLACK, (char *) Language(67)); Enter(2); /* Login Name : */ - pout(9, 0, (char *) Language(68)); - colour(11, 0); + pout(LIGHTBLUE, BLACK, (char *) Language(68)); + colour(CYAN, BLACK); printf("%s (%s)\n", FullName, UnixName); /* Password : */ - pout(9, 0, (char *) Language(69)); - pout(3, 0, (char *)"<"); + pout(LIGHTBLUE, BLACK, (char *) Language(69)); + pout(CYAN, BLACK, (char *)"<"); /* not displayed */ - pout(15, 0, (char *) Language(70)); - pout(3, 0, (char *)">\n\n"); + pout(WHITE, BLACK, (char *) Language(70)); + pout(CYAN, BLACK, (char *)">\n\n"); fflush(stdout); fflush(stdin); @@ -506,7 +532,7 @@ int newuser(char *FullName) Syslog('+', "Completed new-user procedure"); /* New user registration completed. */ - pout(10, 0, (char *) Language(71)); + pout(LIGHTGREEN, BLACK, (char *) Language(71)); Enter(2); alarm_on(); Pause(); diff --git a/mbsebbs/salt.c b/mbsebbs/salt.c index 2cff3d81..51e09214 100644 --- a/mbsebbs/salt.c +++ b/mbsebbs/salt.c @@ -41,6 +41,9 @@ #include #include #include +#ifdef TIME_WITH_SYS_TIME +#include +#endif #include #include "rad64.h"