Merge branch 'master' of ssh://git.code.sf.net/p/mbsebbs/code

Syncing Hg and Git repositories.
This commit is contained in:
Andrew Leary 2017-01-18 19:14:11 -05:00
commit 5f9ec17a78
54 changed files with 384 additions and 335 deletions

32
AUTHORS
View File

@ -5,7 +5,7 @@ $Id: AUTHORS,v 1.29 2015/11/03 21:05:00 mbse Exp $
The following people are members of the MBSE BBS development team: The following people are members of the MBSE BBS development team:
Andrew Leary 1:320/219@fidonet Andrew Leary ajleary19@gmail.com 1:320/219@fidonet
Vincent Coen vbcoen@gmail.com 2:250/1@fidonet Vincent Coen vbcoen@gmail.com 2:250/1@fidonet
Robert James Clay jame@rocasa.us 1:120/544@fidonet Robert James Clay jame@rocasa.us 1:120/544@fidonet
@ -13,10 +13,10 @@ Robert James Clay jame@rocasa.us 1:120/544@fidonet
All following people have contributed to the MBSE BBS project. I'm sure that All following people have contributed to the MBSE BBS project. I'm sure that
people are missing from this list. The list is not in any special order. people are missing from this list. The list is not in any special order.
Michiel Broek mbroek@mbse.eu 2:280/2802 Michiel Broek mbroek@mbse.eu
Ken Bowley kbowley@users.sourceforge.net, 1:114/485@fidonet Ken Bowley kbowley@users.sourceforge.net, 1:114/485@fidonet
Redy Rodriguez redy@users.sourceforge.net 2:283/613.6 Redy Rodriguez redy@users.sourceforge.net
Scott Street sstreet98@users.sourceforge.net, 1:266/420@fidonet Scott Street sstreet98@users.sourceforge.net
Joaquim Homrighausen joho@abs.lu Joaquim Homrighausen joho@abs.lu
Andrew Milner andrew@fido.lu Andrew Milner andrew@fido.lu
Mats Wallin mw@fido.lu Mats Wallin mw@fido.lu
@ -30,10 +30,10 @@ Cristof Meerwald
P. Saratxaga P. Saratxaga
Dima Maloff Dima Maloff
Jan van de Werken Jan van de Werken
Sean Rima Sean Rima 2:263/1@fidonet
Juergen Heisel Juergen Heisel
Jim Hansen Jim Hansen
Johannes Lundberg 2:206/149@fidonet, <jojo@chaosdev.org> Johannes Lundberg jojo@chaosdev.org
Vincent Danen Vincent Danen
Francois Thunus francois@telematique.org Francois Thunus francois@telematique.org
Johan Lindh Johan Lindh
@ -41,21 +41,21 @@ William McBrine
Harald Wuensch Harald Wuensch
NERvOus nervous@nervous.it NERvOus nervous@nervous.it
Bobby Cabral bobbyc@digitelone.com Bobby Cabral bobbyc@digitelone.com
Johannes Beekhuizen 2:280/1018@fidonet Johannes Beekhuizen
Lukas De Groen 2:280/1027@fidonet Lukas De Groen 2:280/1027@fidonet
Joachim Kuwan 2:249/591@fidonet Joachim Kuwan
Greek greek@voyager.nnov.ru Greek greek@voyager.nnov.ru
Sergey Nechaev 2:5015/53@fidonet Sergey Nechaev
Serge Terekhov 2:5000/13@fidonet Serge Terekhov 2:5000/13@fidonet
Vadim Kurland vadim@gu.kiev.ua Vadim Kurland vadim@gu.kiev.ua
Vadim Zaliva lord@crocodile.kiev.ua Vadim Zaliva lord@crocodile.kiev.ua
Przemyslaw Kwiatkowski 2:480/127@fidonet Przemyslaw Kwiatkowski
Phil Kimble kimerud@users.sourceforge.net 1:14/200@fidonet Phil Kimble kimerud@users.sourceforge.net
David Gonzalez skynetbbs@007mundo.com 4:930/1@fidonet David Gonzalez skynetbbs@007mundo.com
Malte Tychsen 2:240/9350@fidonet Malte Tychsen
Dmitry Komissaroff rsprog@mail.ru Dmitry Komissaroff rsprog@mail.ru
skyroam skyroam@users.sourceforge.net skyroam skyroam@users.sourceforge.net
val khokhlov 2:550/180@fidonet val khokhlov
Robert Wolfe 1:2613/4307@fidonet Robert Wolfe 1:116/18@fidonet
Alan Ianson Alan Ianson 1:153/757@fidonet
Simon Voortman 2:280/1049.1@fidonet Simon Voortman 2:280/1049.1@fidonet

View File

@ -1,3 +1,38 @@
v1.0.6.9 28-Sep-2016 - Andrew Leary
1. Fixed compiler warnings while building the BBS. Thanks to
Ken Bowley for the patches.
2. Fixed a bug with the use of an external editor, and removed
a limitation that forced a message to have at least two lines.
Thanks to Ken Bowley for these patches as well.
v1.0.6.8 20-Jul-2016 - Andrew Leary
1. Fixed the SETUP.sh script to handle installing on fresh
installations of Ubuntu 12.04+. These versions do not install
an admin group, which MBSE uses to enable the mbse user to run
sudo. SETUP.sh will now add the admin group if it doesn't
exist, to prevent useradd failing to create the mbse user.
This change only affects first time installations on Ubuntu
12.04 or later.
v1.0.6.7 28-Jun-2016 - Andrew Leary
1. Added the ability to disable cross-zone SEEN-BY
stripping to mbfido. This is currently a global toggle,
defaulting to strip SEEN-BYs when crossing zone boundaries.
In situations where this behavior is not desired, toggle the
SBstrip option to "No" in mbsetup 1.11.20. If there is
enough call for it, I will consider making this configurable
on a group and/or area basis.
v1.0.6.6 23-Jun-2016 - Andrew Leary
1. Several spelling and grammar corrections in mbsebbs.c,
chat.c, offline.c, and newuser.c. Thanks to Sean Dennis for
the updates.
v1.0.6.5 12-Feb-2016 - Robert James Clay v1.0.6.5 12-Feb-2016 - Robert James Clay
1. Edit README file to better reflect current practice. 1. Edit README file to better reflect current practice.

View File

@ -148,7 +148,9 @@ dist tar: ${TARFILE}
clean: clean:
rm -f .filelist core ${TARFILE} paths.h config.h rm -f .filelist core ${TARFILE} paths.h config.h
rm -f FILE_ID.DIZ INSTALL config.log config.status stamp-h
for d in ${SUBDIRS}; do (cd $$d && ${MAKE} $@) || exit; done; for d in ${SUBDIRS}; do (cd $$d && ${MAKE} $@) || exit; done;
rm -f Makefile.global
${TARFILE}: .filelist ${TARFILE}: .filelist
cd ..; ln -s ${PACKAGE} ${PACKAGE}-${VERSION} ; rm -f ${TARFILE}; \ cd ..; ln -s ${PACKAGE} ${PACKAGE}-${VERSION} ; rm -f ${TARFILE}; \

View File

@ -299,6 +299,10 @@ if [ "$OSTYPE" = "Linux" ]; then
fi fi
if [ "$DISTNAME" = "Ubuntu" ]; then if [ "$DISTNAME" = "Ubuntu" ]; then
GRPS=${GRPS}",adm,admin" GRPS=${GRPS}",adm,admin"
if ! grep -q ^admin /etc/group ; then
# Fresh install of Ubuntu 12.04+ has no admin group; we need it to enable use of sudo.
$PW groupadd admin
fi
fi fi
if grep -q ^dialout /etc/group ; then if grep -q ^dialout /etc/group ; then
GRPS=${GRPS}",dialout" GRPS=${GRPS}",dialout"

6
configure vendored
View File

@ -2309,10 +2309,10 @@ SUBDIRS="lib mbcico mbfido mbmon mbsebbs mbutils mbnntp mbtask mbsetup unix lang
PACKAGE="mbsebbs" PACKAGE="mbsebbs"
MAJOR="1" MAJOR="1"
MINOR="0" MINOR="0"
REVISION="6.5" REVISION="6.9"
VERSION="$MAJOR.$MINOR.$REVISION" VERSION="$MAJOR.$MINOR.$REVISION"
COPYRIGHT="Copyright (C) 1997-2015 Michiel Broek, All Rights Reserved" COPYRIGHT="Copyright (C) 1997-2016 MBSE Development Team, All Rights Reserved"
SHORTRIGHT="Copyright (C) 1997-2015 M. Broek" SHORTRIGHT="Copyright (C) 1997-2016 MBSE DevTm"
GROUP="bbs" GROUP="bbs"
OWNER="mbse" OWNER="mbse"
ROWNER="`id -un root`" ROWNER="`id -un root`"

View File

@ -12,10 +12,10 @@ AC_SUBST(SUBDIRS)
PACKAGE="mbsebbs" PACKAGE="mbsebbs"
MAJOR="1" MAJOR="1"
MINOR="0" MINOR="0"
REVISION="6.5" REVISION="6.9"
VERSION="$MAJOR.$MINOR.$REVISION" VERSION="$MAJOR.$MINOR.$REVISION"
COPYRIGHT="Copyright (C) 1997-2015 Michiel Broek, All Rights Reserved" COPYRIGHT="Copyright (C) 1997-2016 MBSE Development Team, All Rights Reserved"
SHORTRIGHT="Copyright (C) 1997-2015 M. Broek" SHORTRIGHT="Copyright (C) 1997-2016 MBSE DevTm"
GROUP="bbs" GROUP="bbs"
OWNER="mbse" OWNER="mbse"
ROWNER="`id -un root`" ROWNER="`id -un root`"

View File

@ -115,6 +115,7 @@ install:
clean: clean:
rm -f filelist rm -f filelist
rm -f basic.html index.html upgrade.html
filelist: Makefile filelist: Makefile
BASE=`pwd`; \ BASE=`pwd`; \

View File

@ -1,34 +1,34 @@
|Please enter your First and Last name: |Please enter your first and last name:
|Please enter your Last name: |Please enter your last name:
|Disconnecting user ... |Disconnecting user...
|Scanning User File ... |Scanning user file...
YN|Did you spell your name correctly? [Y/n] YN|Did you spell your name correctly? [Y/n]
|You need to login again with the name: |You need to login again using the name:
|This is a PRIVATE System. Type "off" to leave |This is a PRIVATE system. Type "off" to leave.
|Mark file number or press <Enter> to stop |Mark file number or press <ENTER> to stop.
|Password: |Password:
|Maximum login attempts have been exceeded ... |Maximum login attempts have been exceeded!
|Either your NAME or PASSWORD is incorrect |Either your NAME or PASSWORD is incorrect.
HR|Export to (H)ome or (R)ules directory: HR|Export to (H)ome or (R)ules directory:
|Message exported to rules directory as |Message exported to rules directory as
|No rules found for this area |No rules found for this area.
|You are not allowed to delete that message |You are not allowed to delete that message!
|Offline Reader: Extended Info turned ON |Offline Reader: Extended Info turned ON.
|Offline Reader: Extended Info turned OFF |Offline Reader: Extended Info turned OFF.
|This is not a plain textfile. |This is not a plain text file.
|You may only login |You may only login
|times at the same time |times at the same time.
|The door is in use by another user, try again later |The door is in use by another user. Please try again later.
YN| Is this correct [y/N]: YN| Is this correct? [y/N]:
|Could not parse |Could not parse
|Select your preferred character set |Select your preferred character set
|Select character set (Enter to Quit): |Select character set (<ENTER> to quit):
|Character set now set to: |Character set now set to:
YN|Check for new mail at login [Y/n]: YN|Check for new mail at login? [Y/n]:
YN|Check for new files at login [Y/n]: YN|Check for new files at login? [Y/n]:
|Enter a short reason for chat |Enter a short reason for chat:
|The Sysop cannot use the bbs to chat! Use mbmon to chat |The Sysop cannot use the BBS to chat! Use mbmon to chat.
|Sorry, the chatserver is not available |Sorry, the chat server is not available.
|line |line
| |
| |
@ -39,34 +39,34 @@ YN|Check for new files at login [Y/n]:
|Use this name: |Use this name:
|Please enter new password : |Please enter new password :
|Please enter password again : |Please enter password again :
|Your passwords do not match! Try again. |Your passwords do not match! Try again.
|Your password must contain at least |Your password must contain at least
|characters! Try again. |characters! Try again.
| |
|Please enter you Voice Number |Please enter your voice number:
|Message exported to your private directory as: |Message exported to your private directory as:
|Please enter a proper phone number |Please enter a proper phone number!
|Please enter you Data Number |Please enter your data number:
|Please enter your location: |Please enter your location:
|Please enter a longer location |Please enter a longer location.
MF|What is your sex? (M)ale or (F)emale: MF|What is your sex? (M)ale or (F)emale:
|Male |Male
|Female |Female
|Please answer M or F |Please answer M or F.
|Unknown |Unknown
|Please enter your Date of Birth DD-MM-YYYY: |Please enter your date of birth (DD-MM-YYYY):
|Sorry you entered this year by mistake. |Sorry, you entered this year by mistake.
|Please enter the correct date format |Please enter the date using the correct date format.
|*** Sysop is starting chat *** |*** Sysop is starting chat ***
|*** Sysop has terminated chat *** |*** Sysop has terminated chat ***
YN=|More (Y/n/=) YN=|More (Y/n/=)
YN|Would you like Hot-Keyed menus? [Y/n]: YN|Would you like hot-keyed menus? [Y/n]:
|Please answer Y or N |Please answer Y or N.
| |
|None |None
|Tag Offline Reader message areas |Tag Offline Reader message areas
|Your user account has been created: |Your user account has been created:
|Login Name : |Login name :
|Password : |Password :
|not displayed |not displayed
|New user registration completed. |New user registration completed.
@ -75,42 +75,42 @@ YN|Would you like Hot-Keyed menus? [Y/n]:
|Please enter a longer location (min |Please enter a longer location (min
| |
| |
|Message doesn't exist |Message doesn't exist!
|News bulletins turned ON |News bulletins turned ON.
|News bulletins turned OFF |News bulletins turned OFF.
| |
| |
|Private message, not owner |This is a private message; only the owner and addressee can view it.
|Please enter the correct date format |Please enter the date using the correct date format.
|Todays Callers to |Today's Callers to
|# User Name Device TimeOn Calls Location |# User Name Device TimeOn Calls Location
|Can't open archiver file. |Can't open archiver file.
|Select your preferred archiver |Select your preferred archiver:
|Select Archiver (Enter to Quit): |Select archive type (<ENTER> to quit):
|Archiver now set to: |Archiver now set to:
|Please enter three combinations. |Please enter three combinations.
|1st digit: |1st digit:
|Please try again! You must input a number greater than Zero and less than |Please try again! You must input a number greater than zero and less than
|2nd digit: |2nd digit:
|3rd digit: |3rd digit:
| Left: | Left:
|Right: |Right:
YN|Attempt to open safe with this combination [Y/n]: YN|Attempt to open safe with this combination [Y/n]:
|You have won the following... |You have won the following...
|Sorry - You didn't open the safe! |Sorry - you didn't open the safe!
|The safe code was: |The safe code was:
YN|Do you want to try again ? [Y/n]: YN|Do you want to try again? [Y/n]:
YN|Do you want to open the safe ? [Y/n]: YN|Do you want to open the safe? [Y/n]:
|THE SAFE IS CURRENTLY LOCKED |THE SAFE IS CURRENTLY LOCKED!
|has cracked the safe. |has cracked the safe.
|The safe will remain locked until the sysop rewards the user. |The safe will remain locked until the sysop rewards the user.
|Maximum trys per day Exceeded! |Maximum tries per day exceeded!
|Edit message signature |Edit message signature
|The FROM, TO and SUBJECT fields are optional. |The FROM, TO and SUBJECT fields are optional.
| From: | From:
| To: | To:
|Subject: |Subject:
| Type up to 10 lines 74 Characters per line | Type up to 10 lines (74 characters per line).
|Functions available: |Functions available:
LREAS|(L)ist, (R)eplace text, (E)dit line, (A)bort, (S)ave LREAS|(L)ist, (R)eplace text, (E)dit line, (A)bort, (S)ave
|Select: |Select:
@ -122,13 +122,13 @@ LREAS|(L)ist, (R)eplace text, (E)dit line, (A)bort, (S)ave
|New password: |New password:
|Confirm new password: |Confirm new password:
|Passwords do not match! |Passwords do not match!
|Password Change Successful |Password change successful.
|Old password incorrect! |Old password incorrect!
|User List |User List
|Enter Username search string or (Enter) for all users: |Enter user name search string or <ENTER> for all users:
|Name Location Last On Calls |Name Location Last On Calls
|Could not find search string ... |Could not find search string!
|Time limit exceeded ... disconnecting! |Time limit exceeded. Disconnecting!
YN=M|More (Y/n/=) M=Mark YN=M|More (Y/n/=) M=Mark
|Scanning |Scanning
|with |with
@ -142,30 +142,30 @@ YN=M|More (Y/n/=) M=Mark
|Daily time limit : |Daily time limit :
|You have |You have
YN|messages, read your mail now? [Y/n]: YN|messages, read your mail now? [Y/n]:
|You have no new mail in your mail box ... |You have no new mail in your mail box.
|Hotkeys are now ON |Hotkeys are now ON.
|Hotkeys are now OFF |Hotkeys are now OFF.
|On |On
|Off |Off
|User name already exists |User name already exists!
|Checking your mail box ... |Checking your mail box ...
|MBSE BBS Chat |MBSE BBS Chat
|The SysOp is currently speaking to somebody else. |The sysop is currently speaking to somebody else.
|Try paging him again in a few minutes ... |Try paging him again in a few minutes.
|You have paged the Sysop the maximum times allowed. |You have paged the Sysop the maximum times allowed for the day.
|Sysop currently is not available ... please leave a comment |The sysop currently is not available. Please leave a comment.
|Posting message in area: |Posting message in area:
|From : |From :
| To : | To :
|Verifying user ... |Verifying user...
|User not found. Try again, or (Enter) to quit |User not found. Try again or <ENTER> to quit.
|Subj : |Subj :
YN|Abort Message [y/N] ?: YN|Abort Message [y/N] ?:
YN|Private [y/N]: YN|Private [y/N]:
|Begin your message now, Blank line to end |Begin your message now. Enter a blank line to end the message.
|Maximum of 60 lines, 73 characters per line |Maximum of 60 lines (73 characters per line).
|Maximum message length exceeded |Maximum message length exceeded!
|Functions available: (Current Message: |Functions available: (current message:
|Lines) |Lines)
|L - List message S - Save message C - Continue message |L - List message S - Save message C - Continue message
|Q - Quit message D - Delete line I - Insert line |Q - Quit message D - Delete line I - Insert line
@ -177,7 +177,7 @@ LSCQDITERZ|Z - Center line
|Delete starting at line |Delete starting at line
|Aborted. |Aborted.
|Please enter a number in the range of |Please enter a number in the range of
|Delete ending at line |Delete ending at line
|Edit |Edit
|Enter line # to edit |Enter line # to edit
|Insert |Insert
@ -188,7 +188,7 @@ LSCQDITERZ|Z - Center line
|Unchanged. |Unchanged.
|Line now reads: |Line now reads:
|Quit |Quit
YN|Are you sure [y/N]: YN|Are you sure? [y/N]:
|Message aborted. |Message aborted.
|No |No
|Text Edit |Text Edit
@ -199,10 +199,10 @@ YN|Are you sure [y/N]:
|Save |Save
|Possible VIRUS found! |Possible VIRUS found!
|Ok |Ok
|Unpacking archive |Unpacking archive.
|Saving message to disk |Saving message to disk.
|Enter line # to center |Enter line # to center
|Line is maximum length and cannot be centered |Line is maximum length and cannot be centered.
|There are no messages in this area. |There are no messages in this area.
|Date : |Date :
YN=|More (Y/n/=/Area #): YN=|More (Y/n/=/Area #):
@ -217,7 +217,7 @@ ANLREQDX|(A)gain, (N)ext, (L)ast, (R)eply, (E)nter, (D)el, (Q)uit, e(X)port
|Next |Next
|ERROR |ERROR
RNQ|(R)eply, (N)ext, (Q)uit: RNQ|(R)eply, (N)ext, (Q)uit:
|Enter to keep Subject. |<ENTER> to keep subject.
|# From To Subject |# From To Subject
|Message area |Message area
|contains |contains
@ -226,27 +226,27 @@ RNQ|(R)eply, (N)ext, (Q)uit:
|Message number [ |Message number [
|Area Type Description Messages Personal |Area Type Description Messages Personal
|thread |thread
|Enter the name of the conference, or ? for a list: |Enter the name of the conference or ? for a list:
|Conference Area Msgs Description |Conference Area Msgs Description
|Deleting message |Deleting message
| Message Areas | Message Areas
|Select Area: |Select area:
|Invalid area specified - Please try again ... |Invalid area specified. Please try again.
|Password is incorrect |Password is incorrect!
|Password is correct |Password is correct.
|You don't have enough security to list this area |You don't have enough security to list this area.
|Can't open file database for this area |Can't open file database for this area!
|Uploaded by: |Uploaded by:
|D E L E T E D |D E L E T E D
| |
YN|Node not known, continue anyway [y/N]: YN|Node not known. Continue anyway? [y/N]:
|Total Files: |Total files:
|FATAL: Unable to open areas database |FATAL: Unable to open areas database!
|You do not have enough access to download from this area. |You do not have enough access to download from this area.
|Please enter filename: |Please enter filename:
|No filename entered, Aborting. |No filename entered. Aborting.
|Illegal Filename! |Illegal filename!
|Sorry that file is unavailable for download |Sorry, that file is unavailable for download.
|You have |You have
|extra download KBytes. |extra download KBytes.
|You do not have enough time to download that file. |You do not have enough time to download that file.
@ -254,16 +254,16 @@ YN|Node not known, continue anyway [y/N]:
|You must upload before you can download. |You must upload before you can download.
|Kilobytes currently available: |Kilobytes currently available:
|Checking your marked downloads, please wait... |Checking your marked downloads, please wait...
|Untag Offline Reader message areas |Untag offline reader message areas
|Found FILEID.DIZ in |Found FILE_ID.DIZ in
|No files marked for download. |No files marked for download.
| |
|You have selected the following Conference(s): |You have selected the following conference(s):
|Filename Size Date |Filename Size Date
|Protocol: Can't open protocol file. |Protocol: Can't open protocol file.
|Select your preferred file transfer protcol |Select your preferred file transfer protocol:
|Select Protocol (Enter to Quit): |Select protocol (<ENTER> to quit):
|Ivalid selection, please try again! |Invalid selection. Please try again!
|Protocol now set to: |Protocol now set to:
|Enter keyword to use for Search: |Enter keyword to use for Search:
|File Search by Keyword |File Search by Keyword
@ -271,33 +271,33 @@ YN|Node not known, continue anyway [y/N]:
| : *.zip is the same as .zip | : *.zip is the same as .zip
|Enter filename to search for : |Enter filename to search for :
|File Search by Filename |File Search by Filename
YN|Search for new since your last call [Y/n]: YN|Search for new files since your last call? [Y/n]:
|Enter new date to search for [DD-MM-YYYY]: |Enter new date to search for [DD-MM-YYYY]:
|File Search by Date |File Search by Date
| |
|Offline Reader Download |Offline Reader Download
|You do not have enough access to upload to this area. |You do not have enough access to upload to this area.
|You have not enough diskspace free to copy this file |There is not enough disk space free to copy this file.
|files( |files(
|bytes) marked for download. |bytes) marked for download.
|The file already exists on the system |The file already exists on the system!
|Please start your upload now ... |Please start your upload now.
|Upload was unsuccessful for: |Upload was unsuccessful for:
YN|Do you want to password protect your upload ? [y/N]: YN|Do you want to password protect your upload? [y/N]:
|REMEMBER: Passwords are "CaSe SeNsITiVe!" |REMEMBER: Passwords are "CaSe SeNsITiVe!"
|Please enter description of file |Please enter description of file:
|Your upload time has been returned to you. Thank you for your upload! |Your upload time has been returned to you. Thank you for your upload!
|Start copy: |Start copy:
|Can't open directory for listing: |Can't open directory for listing:
|Home directory listing for |Home directory listing for
|Please enter filename to delete: |Please enter filename to delete:
|Sorry you may not delete hidden files ... |Sorry you may not delete hidden files!
|Unable to delete file ... |Unable to delete file!
|Invalid filename, please try again ... |Invalid filename. Please try again.
|File does not exist, please try again ... |File does not exist. Please try again.
|Forum Description Msgs. Pers. |Forum Description Msgs. Pers.
| File Areas | File Areas
|Please enter Area Password: |Please enter area password:
|Adding BBS |Adding BBS
|BBS Name: |BBS Name:
|Response needed ... |Response needed ...
@ -307,17 +307,17 @@ YN|Do you want to password protect your upload ? [y/N]:
|Storage (GigaByte): |Storage (GigaByte):
|Speeds: |Speeds:
YN|Would you like to add a extended discription? [Y/n]: YN|Would you like to add a extended discription? [Y/n]:
|Please a enter discription for |Please enter a description for
|BBS Listing |BBS Listing
|# BBS Name Number Software GigaByte Speed |# BBS Name Number Software GigaByte Speed
|Search for a BBS |Search for a BBS
|Please enter 3 letters of BBS to search for: |Please enter 3 letters of BBS to search for:
|I need at least 3 letters ... |You must use at least 3 letters for searching.
YN|View this BBS? [Y/n]: YN|View this BBS? [Y/n]:
|Could not find the BBS Listed ... |Could not find the BBS listed.
|Show a BBS |Show a BBS
|Please enter number to list: |Please enter number to list:
|Record does not exist |Record does not exist!
| Record : | Record :
| BBS Name : | BBS Name :
| Number : | Number :
@ -332,17 +332,17 @@ YN|View this BBS? [Y/n]:
|Please enter number to delete: |Please enter number to delete:
|Record |Record
|does not belong to you. |does not belong to you.
|already marked for deletion |already marked for deletion.
|marked for deletion |marked for deletion.
|The Sysop will purge the list once he has |The sysop will purge the list once he has
|seen you have marked a record for deletion. |seen you have marked a record for deletion.
|Total messages found: |Total messages found:
|Unknown Menu Command! |Sorry, that command isn't recognized.
|Saving... |Saving.
|MBSE BBS Oneliners will randomly appear on the main menu. |MBSE BBS Oneliners will randomly appear on the main menu.
|Obscene or libellous oneliners will be deleted!! |Obscene or libellous oneliners will be deleted!
|Please enter your oneliner below. You have 75 characters. |Please enter your oneliner below. You have 75 characters.
|Oneliner added |Oneliner added!
| # A Date User Description | # A Date User Description
| # Description | # Description
|Please enter number to list: |Please enter number to list:
@ -350,7 +350,7 @@ YN|View this BBS? [Y/n]:
|File(s) : |File(s) :
|Size : |Size :
|Protocol : |Protocol :
|Updating download counters, please wait ... |Updating download counters. Please wait.
|Failed! |Failed!
|Bytes |Bytes
| # Area Active Size Cost File | # Area Active Size Cost File
@ -361,30 +361,30 @@ TE|(T)oggle active, (E)rase all, (ENTER) to continue:
|Marked: |Marked:
|No files tagged. |No files tagged.
|Replace |Replace
|Loading BBS, please wait ... |Loading BBS. Please wait!
|New or deleted mail areas at |New or deleted mail areas at
|Area State Type Description |Area State Type Description
|New Mail check is now ON |New Mail check is now ON.
|New Mail check is now OFF |New Mail check is now OFF.
|Delete file: |Delete file:
YN|Are you Sure? [Y/n]: YN|Are you Sure? [Y/n]:
|New Files check is now ON |New Files check is now ON.
|New Files check is now OFF |New Files check is now OFF.
|Now using the |Now using the
12|Select: 1) Fullscreen editor, 2) External editor 12|Select: 1) Fullscreen editor or 2) External editor (joe)
|No messages found to download! |No messages found to download!
|Press (Enter) to continue: |Press <ENTER> to continue.
|Center |Center
|Too much messages. Only the first |Too many messages! Only the first
|Select your preferred language |Select your preferred language:
|Select Language: |Select language:
|Language now set to: |Language now set to:
|The system will now ask you for a "Unix Account" |The system will now ask you for a "system account".
|Your "Unix Account" is created, you may use it the next time you call. |Your "system account" has been created. You can use it the next time you call.
|Please enter a login name (Maximum 8 characters) |Please enter a login name (maximum 8 characters) to log onto the server.
|ie. John Doe, login = jdoe |ie. John Doe, login = jdoe
|login > |login >
|That login name already exists, please choose another one. |That login name already exists. Please choose another one.
|Line |Line
|Fullscreen |Fullscreen
|External |External
@ -394,7 +394,7 @@ YN|Are you Sure? [Y/n]:
|Netmail |Netmail
|Echomail |Echomail
|News |News
|E-Mail |Email
|Del |Del
|Jan |Jan
|Feb |Feb
@ -410,12 +410,12 @@ YN|Are you Sure? [Y/n]:
|Dec |Dec
|Autologout: idletime reached. |Autologout: idletime reached.
|Will be packed! |Will be packed!
|Enter your handle (Enter for none): |Enter your handle (<ENTER> for none):
|You are now ready to use the bbs |You are now ready to use the bbs!
|Callers On-Line to |Callers Online to
|Name Device Status Location |Name Device Status Location
|Do not disturb turned OFF |Do not disturb turned OFF.
|Do not disturb turned ON |Do not disturb turned ON.
|Browsing |Browsing
|Downloading |Downloading
|Uploading |Uploading
@ -429,54 +429,54 @@ YN|Do you want to download these messages [Y/n]?
|WhosOn List |WhosOn List
|Offline Reader |Offline Reader
|Please enter username to send message to: |Please enter username to send message to:
|Sorry, there is no user on |Sorry, there is no one logged on.
|doesn't wish to be disturbed |doesn't wish to be disturbed.
|Please enter in message to send (Max 76 Characters) |Please enter message to send (max 76 characters):
|** Message ** from |** Message ** from
|Your password is expired, new password : |Your password has expired. Please enter a new password:
|Press ENTER to continue |Press <ENTER> to continue.
|Posting not allowed, this area is Read Only! |Posting not allowed as this area is read-only!
1|Select: 1) Fullscreen editor 1|Select: 1) Fullscreen editor
|Offline Reader Upload |Offline Reader Upload
|Invalid packet received |Invalid packet received!
|Unknown compression type |Unknown compression type!
|Archiver not available |Archiver not available!
|Unknown type mailpacket |Mail packet type is unknown.
|BlueWave Offline download |Blue Wave offline download
|Preparing packet |Preparing packet
|Packing with |Packing with
|Download failed |Download failed!
|Download successfull |Download successful.
|Updating lastread pointers |Updating lastread pointers.
|Processing BlueWave reply packet |Processing Blue Wave reply packet.
|ERROR in packet |ERROR in packet!
|Import messages |Import messages
|No Write access to area |No write access to area!
|Messages imported |message(s) imported.
|Processing Offline Configuration |Processing offline configuration.
|Message areas selected |Message areas selected
|Processing file requests |Processing file requests.
|QWK Offline Download |QWK Offline Download
|Processing QWK reply packet |Processing QWK reply packet.
|ASCII Offline Download |ASCII Offline Download
YN|Crash [y/N]: YN|Crash [y/N]:
YN|Warning: node is not CM, send immediate [y/N]: YN|Warning: node is not CM, send immediate? [y/N]:
YN|Attach file [y/N]: YN|Attach file [y/N]:
|File |File
|will be attached |will be attached.
|File not within |File not within
|mailbox - Incoming and outgoing email |mailbox - Incoming and outgoing email
|archive - Archive of your email |archive - Archive of your email
|trash - Trashcan, your old email |trash - Trashcan, your old email
|Area # |Area #
|minutes. |minutes.
|Fullscreen Editor shortcut keys set to Emacs |Fullscreen editor shortcut keys set to Emacs.
|Fullscreen Editor shortcut keys set to Wordstar |Fullscreen editor shortcut keys set to Wordstar.
|Your address, maximum 3 lines (only visible for the sysop): |Your address (maximum 3 lines [only visible for the sysop]):
|You need to enter your address here |You need to enter your address here.
|Old address: |Old address:
|Use your alias ( |Use your alias (
YN|) to post this message [Y/n]: YN|) to post this message? [Y/n]:
|No more areas with unread messages |No more areas with unread messages.
|Addresse not in Nodelist |Addressee not in nodelist.
|Found Addresse in Nodelist |Found addressee in nodelist!

View File

@ -619,7 +619,7 @@ char *printable(char *s, int l)
case '\b': *p++='\\'; *p++='b'; break; case '\b': *p++='\\'; *p++='b'; break;
default: snprintf(p, 5, "\\%02x", (*s & 0xff)); p+=3; break; default: snprintf(p, 5, "\\%02x", (*s & 0xff)); p+=3; break;
} }
s++; s++;
} }
*p='\0'; *p='\0';
return pbuff; return pbuff;

View File

@ -594,7 +594,7 @@ fidoaddr *faddr2fido(faddr *aka)
fidoaddr *Sys; fidoaddr *Sys;
Sys = (fidoaddr *)malloc(sizeof(fidoaddr)); Sys = (fidoaddr *)malloc(sizeof(fidoaddr));
memset(Sys, 0, sizeof(Sys)); memset(Sys, 0, sizeof(*Sys));
Sys->zone = aka->zone; Sys->zone = aka->zone;
Sys->net = aka->net; Sys->net = aka->net;
Sys->node = aka->node; Sys->node = aka->node;

View File

@ -245,7 +245,7 @@ void html_massage(char *inbuf, char *outbuf, size_t size)
char *inptr = inbuf; char *inptr = inbuf;
char *outptr = outbuf; char *outptr = outbuf;
memset(outbuf, 0, sizeof(outbuf)); memset(outbuf, 0, sizeof(*outbuf));
while (*inptr) { while (*inptr) {

View File

@ -1274,6 +1274,7 @@ struct sysconfig {
unsigned ca_Notify : 1; /* Areamgr: Notify on/off */ unsigned ca_Notify : 1; /* Areamgr: Notify on/off */
unsigned ca_Passwd : 1; /* Areamgr: Passwd change */ unsigned ca_Passwd : 1; /* Areamgr: Passwd change */
unsigned ca_Pause : 1; /* Areamgr: Allow Pause */ unsigned ca_Pause : 1; /* Areamgr: Allow Pause */
unsigned ca_SBstrip : 1; /* Strip SB out-of-zone */
unsigned ca_Check : 1; /* Flag for upgrade check */ unsigned ca_Check : 1; /* Flag for upgrade check */
char rulesdir[65]; /* Area rules directory */ char rulesdir[65]; /* Area rules directory */

View File

@ -518,8 +518,8 @@ char *Fgets(char *l, int size, FILE *f) {
eol = TRUE; eol = TRUE;
break; break;
} else } else
cr = (c=='\r'); cr = (c=='\r');
if ( cr ) if ( cr )
continue; continue;
--size; --size;
if (c=='\n') { eol = TRUE; break; } if (c=='\n') { eol = TRUE; break; }

View File

@ -862,7 +862,7 @@ node *getnlent(faddr *addr)
* Parse the IP flag for a optional port number. * Parse the IP flag for a optional port number.
*/ */
if ((r = strrchr(p, ':'))) { if ((r = strrchr(p, ':'))) {
*r++; r++;
for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next)) { for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next)) {
if (strncmp(p, (*tmps)->flag, 3) == 0) { if (strncmp(p, (*tmps)->flag, 3) == 0) {
/* /*

View File

@ -88,7 +88,7 @@ int rearc(char *filename, char *arctype, int do_quiet)
newname = calloc(PATH_MAX, sizeof(char)); newname = calloc(PATH_MAX, sizeof(char));
strcpy(newname, filename); strcpy(newname, filename);
p = strrchr(newname, '.'); p = strrchr(newname, '.');
*p++; p++;
*p = '\0'; *p = '\0';
if (!getarchiver(arctype)) { if (!getarchiver(arctype)) {

View File

@ -161,7 +161,7 @@ int clam_stream_check(char *servname, char *servport, char *filename)
/* fwrite(buf, 1, buf_len, stderr); */ /* fwrite(buf, 1, buf_len, stderr); */
buf_c = buf + buf_len; buf_c = buf + buf_len;
while(*buf_c=='\r' || *buf_c == '\r' || *buf_c == ' ') while(*buf_c=='\r' || *buf_c == '\r' || *buf_c == ' ')
*buf_c --; buf_c --;
if (buf_c - buf >= sizeof(" FOUND") && strncasecmp(buf_c - sizeof(" FOUND"), " FOUND", sizeof(" FOUND")-1) == 0) { if (buf_c - buf >= sizeof(" FOUND") && strncasecmp(buf_c - sizeof(" FOUND"), " FOUND", sizeof(" FOUND")-1) == 0) {
char *buf_s = buf; char *buf_s = buf;
buf_c -= sizeof(" FOUND"); buf_c -= sizeof(" FOUND");

View File

@ -175,7 +175,7 @@ char *mkemsidat(int caller)
p=xstrcat(p,(char *)"ZAP,"); p=xstrcat(p,(char *)"ZAP,");
if (emsi_local_protos & PROT_ZMO) if (emsi_local_protos & PROT_ZMO)
p=xstrcat(p,(char *)"ZMO,"); p=xstrcat(p,(char *)"ZMO,");
if (emsi_local_protos & PROT_DZA); if (emsi_local_protos & PROT_DZA)
p=xstrcat(p,(char *)"DZA,"); p=xstrcat(p,(char *)"DZA,");
if (emsi_local_protos & PROT_KER) if (emsi_local_protos & PROT_KER)
p=xstrcat(p,(char *)"KER,"); p=xstrcat(p,(char *)"KER,");

View File

@ -491,9 +491,9 @@ file_list *create_filelist(fa_list *al, char *fl, int create)
} }
for (tmpf = st; tmpf; tmpf = tmpf->next) for (tmpf = st; tmpf; tmpf = tmpf->next)
Syslog('o',"flist: \"%s\" -> \"%s\" dsp:%d flofp:%u floff:%u", Syslog('o',"flist: \"%s\" -> \"%s\" dsp:%d flofp:%p floff:%p",
MBSE_SS(tmpf->local), MBSE_SS(tmpf->remote), tmpf->disposition, MBSE_SS(tmpf->local), MBSE_SS(tmpf->remote), tmpf->disposition,
(unsigned int)tmpf->flofp, (unsigned int)tmpf->floff); tmpf->flofp, tmpf->floff);
return st; return st;
} }

View File

@ -241,7 +241,7 @@ SM_STATE(send_mail)
tmpfl = tosend; tmpfl = tosend;
tosend = request; tosend = request;
for (; request->next; request = request->next); for (; request->next; request = request->next);
request->next = tmpfl; request->next = tmpfl;
request = NULL; request = NULL;
} }

View File

@ -1807,7 +1807,7 @@ int hydra(int role)
tmpfl = tosend; tmpfl = tosend;
tosend = request; tosend = request;
for (; request->next; request = request->next); for (; request->next; request = request->next);
request->next = tmpfl; request->next = tmpfl;
request = NULL; request = NULL;
} }
@ -1823,7 +1823,7 @@ int hydra(int role)
if (emsi_remote_lcodes & LCODE_RH1) { if (emsi_remote_lcodes & LCODE_RH1) {
for (tmpfl = tosend; tmpfl->next; tmpfl = tmpfl->next); for (tmpfl = tosend; tmpfl->next; tmpfl = tmpfl->next);
tmpfl->next = respond; tmpfl->next = respond;
rc = hydra_batch(role, tosend); rc = hydra_batch(role, tosend);
tmpfl->next = NULL; /* split filelist into tosend and respond again */ tmpfl->next = NULL; /* split filelist into tosend and respond again */

View File

@ -312,8 +312,8 @@ int main(int argc, char *argv[])
if (execl(temp, "mblogin", (char *)NULL) == -1) if (execl(temp, "mblogin", (char *)NULL) == -1)
perror("FATAL: Error loading BBS!"); perror("FATAL: Error loading BBS!");
InitClient(pw->pw_name, (char *)"mbcico", CFG.location, CFG.logfile, InitClient(pw->pw_name, (char *)"mbcico", CFG.location, CFG.logfile,
CFG.cico_loglevel, CFG.error_log, CFG.mgrlog, CFG.debuglog); CFG.cico_loglevel, CFG.error_log, CFG.mgrlog, CFG.debuglog);
/* /*
* If this happens, nothing is logged! * If this happens, nothing is logged!
*/ */

View File

@ -388,8 +388,8 @@ int each(faddr *addr, char flavor, int isflo, char *fname)
if (*p == '\\') if (*p == '\\')
*p='/'; *p='/';
for (p = buf; *p && isspace(*p); p++); for (p = buf; *p && isspace(*p); p++);
if (*p == '~') if (*p == '~')
continue; continue;
if ((*p == '#') || (*p == '-') || (*p == '^') || (*p == '@') || (*p == '~')) if ((*p == '#') || (*p == '-') || (*p == '^') || (*p == '@') || (*p == '~'))
p++; p++;
if (stat(p, &st) != 0) { if (stat(p, &st) != 0) {

View File

@ -73,7 +73,7 @@ int rxtcp(void)
if ((rc=tcprcvfiles()) == 0) { if ((rc=tcprcvfiles()) == 0) {
if ((emsi_local_opts & OPT_NRQ) == 0) { if ((emsi_local_opts & OPT_NRQ) == 0) {
for (tmpfl = &tosend; *tmpfl; tmpfl = &((*tmpfl)->next)); for (tmpfl = &tosend; *tmpfl; tmpfl = &((*tmpfl)->next));
*tmpfl = respond_wazoo(); *tmpfl = respond_wazoo();
} }
if ((tosend != NULL) || ((emsi_remote_lcodes & LCODE_NPU) == 0)) if ((tosend != NULL) || ((emsi_remote_lcodes & LCODE_NPU) == 0))

View File

@ -305,7 +305,7 @@ void Send(int newsmode, char *outstr)
int ftn2rfc(faddr *f, faddr *t, char *subj, char *origline, time_t mdate, int flags, FILE *pkt) int ftn2rfc(faddr *f, faddr *t, char *subj, char *origline, time_t mdate, int flags, FILE *pkt)
{ {
int rrq, result = 1, waskludge = FALSE, badkludge; int rrq, result = 1, waskludge = FALSE, badkludge;
int bNeedToGetAddressFromMsgid = (int)NULL, newsmode = 0, lines, pass, count, first; int bNeedToGetAddressFromMsgid = 0, newsmode = 0, lines, pass, count, first;
char *newsgroup = NULL, *charset = NULL; char *newsgroup = NULL, *charset = NULL;
char *temp, *p, *q, *r, *l, *b, *To = NULL, buf[4096], c, MailFrom[128], MailTo[128]; char *temp, *p, *q, *r, *l, *b, *To = NULL, buf[4096], c, MailFrom[128], MailTo[128];
time_t now; time_t now;

View File

@ -202,7 +202,7 @@ void editor_configs(void)
for (i = 1; i < 40; i++) for (i = 1; i < 40; i++)
if (CFG.akavalid[i]) if (CFG.akavalid[i])
fprintf(fp, "AKA %s\n", aka2str(CFG.aka[i])); fprintf(fp, "AKA %s\n", aka2str(CFG.aka[i]));
fprintf(fp, "\n"); fprintf(fp, "\n");
gold_akamatch(fp); gold_akamatch(fp);
fprintf(fp, "; JAM MessageBase Setup\n;\n"); fprintf(fp, "; JAM MessageBase Setup\n;\n");

View File

@ -444,8 +444,8 @@ int compile(char *nlname, unsigned short zo, unsigned short ne, unsigned short n
*/ */
if ((*(buf+strlen(buf) -1) != '\n') && (*(buf + strlen(buf) -1) != '\012')) { if ((*(buf+strlen(buf) -1) != '\n') && (*(buf + strlen(buf) -1) != '\012')) {
while (fgets(buf, sizeof(buf) -1, nl) && (*(buf + strlen(buf) -1) != '\n')) /*void*/; while (fgets(buf, sizeof(buf) -1, nl) && (*(buf + strlen(buf) -1) != '\n')) /*void*/;
if (strlen(buf) > 1) /* Suppress EOF character */ if (strlen(buf) > 1) /* Suppress EOF character */
Syslog('-', "Nodelist: too long line junked (%d)", lineno); Syslog('-', "Nodelist: too long line junked (%d)", lineno);
continue; continue;
} }

View File

@ -69,7 +69,7 @@ void MacroRead(FILE *fi, FILE *fp)
/* /*
* Empty lines are just written * Empty lines are just written
*/ */
fprintf(fp, "\r"); fprintf(fp, "\n");
} else { } else {
strncpy(temp, ParseMacro(line,&res), 254); strncpy(temp, ParseMacro(line,&res), 254);
if (res) if (res)
@ -78,7 +78,7 @@ void MacroRead(FILE *fi, FILE *fp)
* Only output if something was evaluated * Only output if something was evaluated
*/ */
if (strlen(temp)) if (strlen(temp))
fprintf(fp, "%s\r", temp); fprintf(fp, "%s\n", temp);
} }
} }
} }

View File

@ -338,7 +338,7 @@ int postecho(faddr *p_from, faddr *f, faddr *t, char *orig, char *subj, time_t m
*/ */
if (!dupe && !isbad) { if (!dupe && !isbad) {
if (msgs.Aka.zone != Link.aka.zone) { if ((msgs.Aka.zone != Link.aka.zone) && (CFG.ca_SBstrip)) {
/* /*
* If it is a zonegated echomailmessage the SEEN-BY lines * If it is a zonegated echomailmessage the SEEN-BY lines
* are stripped off including that of the other zone's * are stripped off including that of the other zone's

View File

@ -373,8 +373,8 @@ int rfc2ftn(FILE *fp, faddr *recipient)
fprintf(ofp, "\001TOPT %d\n", fmsg->to->point); fprintf(ofp, "\001TOPT %d\n", fmsg->to->point);
if (fmsg->from->point != 0) if (fmsg->from->point != 0)
fprintf(ofp, "\001FMPT %d\n", fmsg->from->point); fprintf(ofp, "\001FMPT %d\n", fmsg->from->point);
fprintf(ofp, "\001INTL %d:%d/%d %d:%d/%d\n", fmsg->to->zone, fmsg->to->net, fmsg->to->node, fprintf(ofp, "\001INTL %d:%d/%d %d:%d/%d\n", fmsg->to->zone, fmsg->to->net, fmsg->to->node,
fmsg->from->zone, fmsg->from->net, fmsg->from->node); fmsg->from->zone, fmsg->from->net, fmsg->from->node);
} }
if ((fmsg->msgid_a == NULL) || (fmsg->msgid_n == 0)) { if ((fmsg->msgid_a == NULL) || (fmsg->msgid_n == 0)) {
@ -673,10 +673,10 @@ int rfc2ftn(FILE *fp, faddr *recipient)
for (tmp = msg; tmp; tmp = tmp->next) for (tmp = msg; tmp; tmp = tmp->next)
if (!strcasecmp(tmp->key,"X-FTN-PATH")) if (!strcasecmp(tmp->key,"X-FTN-PATH"))
fill_path(&ptl,tmp->val); fill_path(&ptl,tmp->val);
if (msgs.Aka.point == 0) { if (msgs.Aka.point == 0) {
snprintf(sbe,128,"%u/%u",msgs.Aka.net, msgs.Aka.node); snprintf(sbe,128,"%u/%u",msgs.Aka.net, msgs.Aka.node);
fill_path(&ptl,sbe); fill_path(&ptl,sbe);
} }
/* /*
* Only add PATH line if there is something * Only add PATH line if there is something

View File

@ -463,9 +463,9 @@ int getmessage(FILE *pkt, faddr *p_from, faddr *p_to)
} else } else
if (*(l=p+strlen(p)-1) == '\n') if (*(l=p+strlen(p)-1) == '\n')
*l='\0'; *l='\0';
for (l=p+strlen(p)-1;*l == ' ';l--) for (l=p+strlen(p)-1;*l == ' ';l--)
*l='\0'; *l='\0';
orig = xstrcpy(p); orig = xstrcpy(p);
} }
} }

View File

@ -89,7 +89,7 @@ void ParseMask(char *s, fidoaddr *addr)
else else
if (strcmp(str, "All")) if (strcmp(str, "All"))
good = FALSE; good = FALSE;
str = p; str = p;
} }
if ((p=strchr(str, '.'))) { if ((p=strchr(str, '.'))) {
@ -101,7 +101,7 @@ void ParseMask(char *s, fidoaddr *addr)
addr->node = 65535; addr->node = 65535;
else else
good = FALSE; good = FALSE;
str = p; str = p;
} else { } else {
if (strspn(str, "0123456789") == strlen(str)) if (strspn(str, "0123456789") == strlen(str))
addr->node = atoi(str); addr->node = atoi(str);
@ -110,7 +110,7 @@ void ParseMask(char *s, fidoaddr *addr)
addr->node = 65535; addr->node = 65535;
else else
good = FALSE; good = FALSE;
str = NULL; str = NULL;
} }
if (str) { if (str) {

View File

@ -406,7 +406,7 @@ int get_post(char *buf, int max)
int c, len; int c, len;
len = 0; len = 0;
memset(buf, 0, sizeof(buf)); memset(buf, 0, sizeof(*buf));
while (TRUE) { while (TRUE) {
c = tty_getc(180); c = tty_getc(180);
if (c <= 0) { if (c <= 0) {

View File

@ -263,7 +263,7 @@ int get_nntp(char *buf, int max)
int c, len; int c, len;
len = 0; len = 0;
memset(buf, 0, sizeof(buf)); memset(buf, 0, sizeof(*buf));
while (TRUE) { while (TRUE) {
c = tty_getc(180); c = tty_getc(180);
if (c <= 0) { if (c <= 0) {

View File

@ -652,10 +652,10 @@ int rfc2ftn(FILE *fp)
for (tmp = msg; tmp; tmp = tmp->next) for (tmp = msg; tmp; tmp = tmp->next)
if (!strcasecmp(tmp->key,"X-FTN-PATH")) if (!strcasecmp(tmp->key,"X-FTN-PATH"))
fill_path(&ptl,tmp->val); fill_path(&ptl,tmp->val);
if (msgs.Aka.point == 0) { if (msgs.Aka.point == 0) {
snprintf(sbe,16,"%u/%u",msgs.Aka.net, msgs.Aka.node); snprintf(sbe,16,"%u/%u",msgs.Aka.net, msgs.Aka.node);
fill_path(&ptl,sbe); fill_path(&ptl,sbe);
} }
/* /*
* Only add PATH line if there is something * Only add PATH line if there is something

View File

@ -236,7 +236,7 @@ void Chat(char *username, char *channel)
if (socket_send(buf) == 0) { if (socket_send(buf) == 0) {
strncpy(buf, socket_receive(), sizeof(buf)-1); strncpy(buf, socket_receive(), sizeof(buf)-1);
if (strncmp(buf, "200:1,", 6) == 0) { if (strncmp(buf, "200:1,", 6) == 0) {
Syslog('!', "Chatsever is not available"); Syslog('!', "Chat server is not available");
colour(LIGHTRED, BLACK); colour(LIGHTRED, BLACK);
mvprintw(4, 1, (char *) Language(30)); mvprintw(4, 1, (char *) Language(30));
Enter(2); Enter(2);
@ -248,7 +248,7 @@ void Chat(char *username, char *channel)
locate(rows - 2, 1); locate(rows - 2, 1);
colour(WHITE, BLUE); colour(WHITE, BLUE);
snprintf(buf, 200, "%-*s", cols, " Chat, type \"/EXIT\" to exit or \"/HELP\" for help"); snprintf(buf, 200, "%-*s", cols, " Type \"/EXIT\" to exit or \"/HELP\" for help.");
mvprintw(rows - 2, 1, buf); mvprintw(rows - 2, 1, buf);
colour(WHITE, BLACK); colour(WHITE, BLACK);

View File

@ -1042,7 +1042,7 @@ void Choose_Mailbox(char *Option)
SetEmailArea((char *)"trash"); SetEmailArea((char *)"trash");
else if (!strcmp(sMailbox, "trash")) else if (!strcmp(sMailbox, "trash"))
SetEmailArea((char *)"archive"); SetEmailArea((char *)"archive");
else if (!strcmp(sMailbox, "archive")); else if (!strcmp(sMailbox, "archive"))
SetEmailArea((char *)"mailbox"); SetEmailArea((char *)"mailbox");
} }
Syslog('+', "Emailarea: %s", sMailbox); Syslog('+', "Emailarea: %s", sMailbox);

View File

@ -817,7 +817,7 @@ int Save_Msg(int IsReply, faddr *Dest)
Syslog('b', "Entering Save_Msg() Line=%d, Dest=%s", Line, (Dest == NULL)?"NULL":"valid"); Syslog('b', "Entering Save_Msg() Line=%d, Dest=%s", Line, (Dest == NULL)?"NULL":"valid");
if (Line < 2) if (Line < 1)
return TRUE; return TRUE;
/* Saving message to disk */ /* Saving message to disk */
@ -2939,7 +2939,7 @@ int Ext_Edit()
i++; i++;
} }
changed=TRUE; changed=TRUE;
Line=i; Line=i-1;
fclose(fd); fclose(fd);
} }
free(l); free(l);

View File

@ -220,7 +220,7 @@ int main(int argc, char **argv)
i = getpid(); i = getpid();
if ((tty = ttyname(0)) == NULL) { if ((tty = ttyname(0)) == NULL) {
WriteError("Not at a tty"); WriteError("Not at a TTY");
Free_Language(); Free_Language();
Quick_Bye(MBERR_OK); Quick_Bye(MBERR_OK);
} }
@ -250,7 +250,7 @@ int main(int argc, char **argv)
* log the user off. * log the user off.
*/ */
if (CheckStatus() == FALSE) { if (CheckStatus() == FALSE) {
Syslog('+', "Kicking user out, the BBS is closed"); Syslog('+', "Kicking user out. The BBS is closed.");
Free_Language(); Free_Language();
Quick_Bye(MBERR_OK); Quick_Bye(MBERR_OK);
} }
@ -272,7 +272,7 @@ int main(int argc, char **argv)
* Check and report screens that are too small * Check and report screens that are too small
*/ */
if ((cols < 80) || (rows < 24)) { if ((cols < 80) || (rows < 24)) {
snprintf(temp, 81, "Your screen is set to %dx%d, we use 80x24 at least", cols, rows); snprintf(temp, 81, "\r\n\r\nYour screen is set to %dx%d. MBSE requires an 80x24 minimum screen size.", cols, rows);
poutCR(LIGHTRED, BLACK, temp); poutCR(LIGHTRED, BLACK, temp);
Enter(1); Enter(1);
cols = 80; cols = 80;
@ -287,9 +287,9 @@ int main(int argc, char **argv)
*/ */
snprintf(temp, PATH_MAX, "%s/%s", CFG.bbs_usersdir, sUnixName); snprintf(temp, PATH_MAX, "%s/%s", CFG.bbs_usersdir, sUnixName);
if (stat(temp, &sb)) { if (stat(temp, &sb)) {
snprintf(temp, 81, "No homedirectory\r\n\r\n"); snprintf(temp, 81, "You don't have a home directory!\r\n\r\n");
PUTSTR(temp); PUTSTR(temp);
WriteError("homedirectory %s doesn't exist", temp); WriteError("User's home directory %s doesn't exist", temp);
Quick_Bye(MBERR_OK); Quick_Bye(MBERR_OK);
} }
Fix = FALSE; Fix = FALSE;
@ -331,13 +331,13 @@ int main(int argc, char **argv)
} }
if (Fix) { if (Fix) {
if (chmod(temp, 0770)) { if (chmod(temp, 0770)) {
WriteError("Could not set home directory mode to 0770"); WriteError("Could not set home directory mode to 0770!");
snprintf(temp, 81, "Internal error, the sysop is notified"); snprintf(temp, 81, "Internal error: the sysop has been notified.");
poutCR(LIGHTRED, BLACK, temp); poutCR(LIGHTRED, BLACK, temp);
Enter(1); Enter(1);
Quick_Bye(MBERR_OK); Quick_Bye(MBERR_OK);
} else { } else {
Syslog('+', "Corrected home directory mode to 0770"); Syslog('+', "Corrected home directory mode to 0770.");
} }
} }
@ -359,7 +359,7 @@ int main(int argc, char **argv)
snprintf(ttyinfo.comment, 41, "%s", p); snprintf(ttyinfo.comment, 41, "%s", p);
snprintf(ttyinfo.tty, 7, "%s", pTTY); snprintf(ttyinfo.tty, 7, "%s", pTTY);
snprintf(ttyinfo.speed, 21, "10 mbit"); snprintf(ttyinfo.speed, 21, "10 mbit");
snprintf(ttyinfo.flags, 31, "IBN,IFC,XX"); snprintf(ttyinfo.flags, 31, "XX,IBN,IFC");
ttyinfo.type = NETWORK; ttyinfo.type = NETWORK;
ttyinfo.available = TRUE; ttyinfo.available = TRUE;
ttyinfo.honor_zmh = FALSE; ttyinfo.honor_zmh = FALSE;

View File

@ -328,7 +328,7 @@ void DoMenu(int Type)
case 7: case 7:
/* Run external program */ /* Run external program */
if (strlen(menus.DoorName) && !menus.HideDoor) { if (strlen(menus.DoorName) && !menus.HideDoor) {
memset(temp, 0, sizeof(temp)); memset(temp, 0, sizeof(*temp));
strcpy(temp, menus.DoorName); strcpy(temp, menus.DoorName);
ExtDoor(menus.OptionalData, menus.NoDoorsys, menus.Y2Kdoorsys, menus.Comport, ExtDoor(menus.OptionalData, menus.NoDoorsys, menus.Y2Kdoorsys, menus.Comport,
menus.NoSuid, menus.NoPrompt, menus.SingleUser, temp); menus.NoSuid, menus.NoPrompt, menus.SingleUser, temp);

View File

@ -81,7 +81,7 @@ int newuser(void)
struct userrec us; struct userrec us;
IsDoing("New user login"); IsDoing("New user login");
Syslog('+', "Newuser registration"); Syslog('+', "New user registration");
clear(); clear();
DisplayFile((char *)"newuser"); DisplayFile((char *)"newuser");
if ((iLang = Chg_Language(TRUE)) == 0) if ((iLang = Chg_Language(TRUE)) == 0)
@ -198,7 +198,7 @@ int newuser(void)
if (CFG.iVoicePhone) { if (CFG.iVoicePhone) {
while (1) { while (1) {
Enter(1); Enter(1);
/* Please enter you Voice Number */ /* Please enter your voice number */
language(LIGHTGREEN, BLACK, 45); language(LIGHTGREEN, BLACK, 45);
Enter(1); Enter(1);
@ -223,7 +223,7 @@ int newuser(void)
if (CFG.iDataPhone) { if (CFG.iDataPhone) {
while (TRUE) { while (TRUE) {
Enter(1); Enter(1);
/* Please enter you Data Number */ /* Please enter your data number */
language(LIGHTGREEN, BLACK, 48); language(LIGHTGREEN, BLACK, 48);
Enter(1); Enter(1);
@ -233,7 +233,7 @@ int newuser(void)
GetPhone(temp, 16); GetPhone(temp, 16);
/* /*
* If no dataphone, copy voicephone. * If no data phone, copy voice phone.
*/ */
if (strcmp(temp, "") == 0) { if (strcmp(temp, "") == 0) {
strcpy(usrconfig.sDataPhone, usrconfig.sVoicePhone); strcpy(usrconfig.sDataPhone, usrconfig.sVoicePhone);
@ -559,7 +559,7 @@ int newuser(void)
DisplayFile((char *)"registered"); DisplayFile((char *)"registered");
Syslog('+', "Completed new-user procedure"); Syslog('+', "Completed new user procedure");
/* New user registration completed. */ /* New user registration completed. */
poutCR(LIGHTGREEN, BLACK, (char *) Language(71)); poutCR(LIGHTGREEN, BLACK, (char *) Language(71));
/* You need to login again with the name: */ /* You need to login again with the name: */

View File

@ -955,7 +955,7 @@ void OLR_RestrictDate()
{ {
WhosDoingWhat(OLR, NULL); WhosDoingWhat(OLR, NULL);
PUTSTR((char *)"Not Yet Implemented"); PUTSTR((char *)"Sorry, but this feature isn't yet implemented.");
Enter(1); Enter(1);
Pause(); Pause();
} }
@ -974,7 +974,7 @@ void OLR_Upload(void)
up_list *up = NULL, *tmpf; up_list *up = NULL, *tmpf;
if (strlen(CFG.bbsid) == 0) { if (strlen(CFG.bbsid) == 0) {
PUTSTR((char *)"System configuration error, inform sysop"); PUTSTR((char *)"System configuration error. Inform the sysop!");
Enter(1); Enter(1);
WriteError("Config OLR bbsid not configured"); WriteError("Config OLR bbsid not configured");
Pause(); Pause();
@ -1013,7 +1013,7 @@ void OLR_Upload(void)
} }
if (RetVal == FALSE) { if (RetVal == FALSE) {
WriteError("Invalid OLR packed received"); WriteError("Invalid OLR packet received!");
for (tmpf = up; tmpf; tmpf = tmpf->next) { for (tmpf = up; tmpf; tmpf = tmpf->next) {
Syslog('+', "Delete %s", tmpf->filename); Syslog('+', "Delete %s", tmpf->filename);
unlink(tmpf->filename); unlink(tmpf->filename);
@ -1074,7 +1074,7 @@ void OLR_Upload(void)
rc = execute_str(archiver.funarc, File, NULL, (char *)"/dev/null", (char *)"/dev/null", (char *)"/dev/null"); rc = execute_str(archiver.funarc, File, NULL, (char *)"/dev/null", (char *)"/dev/null", (char *)"/dev/null");
if (rawport() != 0) { if (rawport() != 0) {
WriteError("Unable to set raw mode"); WriteError("Unable to set raw mode!");
} }
if (rc) { if (rc) {
WriteError("$Failed %s", temp); WriteError("$Failed %s", temp);
@ -1090,7 +1090,7 @@ void OLR_Upload(void)
unlink(File); unlink(File);
/* /*
* Check for BlueWave files, case insensitive. * Check for Blue Wave files, case insensitive.
*/ */
RetVal = FALSE; RetVal = FALSE;
snprintf(Dirpath, PATH_MAX, "%s/%s", CFG.bbs_usersdir, exitinfo.Name); snprintf(Dirpath, PATH_MAX, "%s/%s", CFG.bbs_usersdir, exitinfo.Name);
@ -1111,7 +1111,7 @@ void OLR_Upload(void)
} }
if (RetVal) { if (RetVal) {
Syslog('+', "OLR packet is BlueWave v3"); Syslog('+', "OLR packet is Blue Wave v3");
free(File); free(File);
free(temp); free(temp);
BlueWave_Fetch(); BlueWave_Fetch();
@ -1133,7 +1133,7 @@ void OLR_Upload(void)
return; return;
} }
WriteError("OLR_Upload: Garbage in mailpacket, clean directory!"); WriteError("OLR Upload: Garbage in mail packet. Clean up the directory!");
/* Unknown type mailpacket */ /* Unknown type mailpacket */
poutCR(LIGHTRED, BLACK, (char *)Language(443)); poutCR(LIGHTRED, BLACK, (char *)Language(443));
Pause(); Pause();
@ -1145,7 +1145,7 @@ void OLR_Upload(void)
/*************************************************************************** /***************************************************************************
* *
* BlueWave specific functions. * Blue Wave specific functions.
*/ */
@ -1156,7 +1156,7 @@ char *Extensions[] = {
/* /*
* Download a BlueWave mailpacket, called from menu. * Download a Blue Wave mailpacket, called from menu.
*/ */
void OLR_DownBW() void OLR_DownBW()
{ {
@ -1172,9 +1172,9 @@ void OLR_DownBW()
msg_high *mhl = NULL; msg_high *mhl = NULL;
if (strlen(CFG.bbsid) == 0) { if (strlen(CFG.bbsid) == 0) {
PUTSTR((char *)"System configuration error, inform sysop"); PUTSTR((char *)"System configuration error. Inform the sysop!");
Enter(1); Enter(1);
WriteError("Config OLR bbsid not configured"); WriteError("Config OLR BBS ID not configured");
Pause(); Pause();
return; return;
} }
@ -1192,7 +1192,7 @@ void OLR_DownBW()
Now = time(NULL); Now = time(NULL);
tp = localtime(&Now); tp = localtime(&Now);
Syslog('+', "Preparing BlueWave packet"); Syslog('+', "Preparing Blue Wave packet");
snprintf(Pktname, 32, "%s%s", CFG.bbsid , Extensions[tp->tm_wday]); snprintf(Pktname, 32, "%s%s", CFG.bbsid , Extensions[tp->tm_wday]);
Syslog('m', "Packet name %s", Pktname); Syslog('m', "Packet name %s", Pktname);
@ -1405,13 +1405,13 @@ void OLR_DownBW()
} }
if (rc) { if (rc) {
Syslog('+', "BlueWave download failed"); Syslog('+', "Blue Wave download failed");
/* Download failed */ /* Download failed */
poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(447)); poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(447));
} else { } else {
Syslog('+', "BlueWave download successfull"); Syslog('+', "Blue Wave download successful");
PUTCHAR('\r'); PUTCHAR('\r');
/* Download successfull */ /* Download successful */
poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448)); poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448));
if (mhl != NULL) if (mhl != NULL)
@ -1461,10 +1461,10 @@ void BlueWave_Fetch()
} }
if (up != NULL) { if (up != NULL) {
fread(&Uph, sizeof(UPL_HEADER), 1, up); fread(&Uph, sizeof(UPL_HEADER), 1, up);
Syslog('+', "Processing BlueWave v3 \"%s\" file", Filename); Syslog('+', "Processing Blue Wave v3 \"%s\" file", Filename);
Syslog('+', "Client: %s %d.%d", Uph.reader_name, Uph.reader_major, Uph.reader_minor); Syslog('+', "Client: %s %d.%d", Uph.reader_name, Uph.reader_major, Uph.reader_minor);
if (le_us(Uph.upl_header_len) != sizeof(UPL_HEADER)) { if (le_us(Uph.upl_header_len) != sizeof(UPL_HEADER)) {
WriteError("Recordsize mismatch"); WriteError("Record size mismatch");
fclose(up); fclose(up);
free(temp); free(temp);
/* ERROR in packet */ /* ERROR in packet */
@ -1638,7 +1638,7 @@ void BlueWave_Fetch()
if (iol != NULL) { if (iol != NULL) {
/* Processing Offline Configuration */ /* Processing Offline Configuration */
poutCR(LIGHTBLUE, BLACK, (char *)Language(455)); poutCR(LIGHTBLUE, BLACK, (char *)Language(455));
Syslog('+', "Processing BlueWave v3 configuration file \"%s\"", Filename); Syslog('+', "Processing Blue Wave v3 configuration file \"%s\"", Filename);
OLC_head = FALSE; OLC_head = FALSE;
while (fgets(b, 255, iol) != NULL ) { while (fgets(b, 255, iol) != NULL ) {
@ -1950,7 +1950,7 @@ void OLR_DownQWK(void)
msg_high *tmp, *mhl = NULL; msg_high *tmp, *mhl = NULL;
if (strlen(CFG.bbsid) == 0) { if (strlen(CFG.bbsid) == 0) {
poutCR(LIGHTRED, BLACK, (char *)"System configuration error, inform sysop"); poutCR(LIGHTRED, BLACK, (char *)"System configuration error. Inform the sysop!");
WriteError("Config OLR bbsid not configured"); WriteError("Config OLR bbsid not configured");
Pause(); Pause();
return; return;
@ -2159,9 +2159,9 @@ void OLR_DownQWK(void)
/* Download failed */ /* Download failed */
pout(CFG.HiliteF, CFG.HiliteB, (char *)Language(447)); pout(CFG.HiliteF, CFG.HiliteB, (char *)Language(447));
} else { } else {
Syslog('+', "QWK download successfull"); Syslog('+', "QWK download successful");
PUTCHAR('\r'); PUTCHAR('\r');
/* Download successfull */ /* Download successful */
poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448)); poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448));
if (mhl != NULL) if (mhl != NULL)
@ -2191,7 +2191,7 @@ void QWK_Fetch()
fidoaddr dest; fidoaddr dest;
int HasTear; int HasTear;
/* Processing BlueWave reply packet */ /* Processing QWK reply packet */
poutCR(LIGHTBLUE, BLACK, (char *)Language(459)); poutCR(LIGHTBLUE, BLACK, (char *)Language(459));
temp = calloc(PATH_MAX, sizeof(char)); temp = calloc(PATH_MAX, sizeof(char));
otemp = calloc(PATH_MAX, sizeof(char)); otemp = calloc(PATH_MAX, sizeof(char));
@ -2665,7 +2665,7 @@ void OLR_DownASCII(void)
msg_high *tmp, *mhl = NULL; msg_high *tmp, *mhl = NULL;
if (strlen(CFG.bbsid) == 0) { if (strlen(CFG.bbsid) == 0) {
poutCR(LIGHTRED, BLACK, (char *)"System configuration error, inform sysop"); poutCR(LIGHTRED, BLACK, (char *)"System configuration error. Inform the sysop!");
WriteError("Config OLR bbsid not configured"); WriteError("Config OLR bbsid not configured");
Pause(); Pause();
return; return;
@ -2853,9 +2853,9 @@ void OLR_DownASCII(void)
/* Download failed */ /* Download failed */
pout(CFG.HiliteF, CFG.HiliteB, (char *)Language(447)); pout(CFG.HiliteF, CFG.HiliteB, (char *)Language(447));
} else { } else {
Syslog('+', "ASCII download successfull"); Syslog('+', "ASCII download successful");
PUTCHAR('\r'); PUTCHAR('\r');
/* Download successfull */ /* Download successful */
poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448)); poutCR(CFG.HiliteF, CFG.HiliteB, (char *)Language(448));
if (mhl != NULL) if (mhl != NULL)

View File

@ -776,13 +776,14 @@ void s_fidomailcfg(void)
mbse_mvprintw(17, 1, "11. Max systems"); mbse_mvprintw(17, 1, "11. Max systems");
mbse_mvprintw(18, 1, "12. Max groups"); mbse_mvprintw(18, 1, "12. Max groups");
mbse_mvprintw(12,42, "13. 4d address"); mbse_mvprintw(11,42, "13. 4d address");
mbse_mvprintw(13,42, "14. Split at"); mbse_mvprintw(12,42, "14. Split at");
mbse_mvprintw(14,42, "15. Force at"); mbse_mvprintw(13,42, "15. Force at");
mbse_mvprintw(15,42, "16. Allow +*"); mbse_mvprintw(14,42, "16. Allow +*");
mbse_mvprintw(16,42, "17. Notify"); mbse_mvprintw(15,42, "17. Notify");
mbse_mvprintw(17,42, "18. Passwd"); mbse_mvprintw(16,42, "18. Passwd");
mbse_mvprintw(18,42, "19. Pause"); mbse_mvprintw(17,42, "19. Pause");
mbse_mvprintw(18,42, "20. SB strip");
set_color(WHITE, BLACK); set_color(WHITE, BLACK);
show_str( 7,16,64, CFG.badboard); show_str( 7,16,64, CFG.badboard);
@ -798,13 +799,14 @@ void s_fidomailcfg(void)
show_int( 17,16, CFG.toss_systems); show_int( 17,16, CFG.toss_systems);
show_int( 18,16, CFG.toss_groups); show_int( 18,16, CFG.toss_groups);
show_bool(12,58, CFG.addr4d); show_bool(11,58, CFG.addr4d);
show_int( 13,58, CFG.new_split); show_int( 12,58, CFG.new_split);
show_int( 14,58, CFG.new_force); show_int( 13,58, CFG.new_force);
show_bool(15,58, CFG.ca_PlusAll); show_bool(14,58, CFG.ca_PlusAll);
show_bool(16,58, CFG.ca_Notify); show_bool(15,58, CFG.ca_Notify);
show_bool(17,58, CFG.ca_Passwd); show_bool(16,58, CFG.ca_Passwd);
show_bool(18,58, CFG.ca_Pause); show_bool(17,58, CFG.ca_Pause);
show_bool(18,58, CFG.ca_SBstrip);
} }
@ -815,7 +817,7 @@ void e_fidomailcfg(void)
s_fidomailcfg(); s_fidomailcfg();
for (;;) { for (;;) {
switch(select_menu(19)) { switch(select_menu(20)) {
case 0: return; case 0: return;
case 1: E_JAM( 7,16,64, CFG.badboard, "The path to the ^bad echomail^ board.") case 1: E_JAM( 7,16,64, CFG.badboard, "The path to the ^bad echomail^ board.")
case 2: E_JAM( 8,16,64, CFG.dupboard, "The path to the ^dupe echomail^ board.") case 2: E_JAM( 8,16,64, CFG.dupboard, "The path to the ^dupe echomail^ board.")
@ -851,13 +853,14 @@ void e_fidomailcfg(void)
CloseNoderec(TRUE); CloseNoderec(TRUE);
} }
break; break;
case 13:E_BOOL(12,58, CFG.addr4d, "Use ^4d^ addressing instead of ^5d^ addressing.") case 13:E_BOOL(11,58, CFG.addr4d, "Use ^4d^ addressing instead of ^5d^ addressing.")
case 14:E_IRC( 13,58, CFG.new_split, 12, 60, "Gently ^split^ newfiles reports after n kilobytes (12..60).") case 14:E_IRC( 12,58, CFG.new_split, 12, 60, "Gently ^split^ newfiles reports after n kilobytes (12..60).")
case 15:E_IRC( 14,58, CFG.new_force, 16, 64, "Force ^split^ of newfiles reports after n kilobytes (16..64).") case 15:E_IRC( 13,58, CFG.new_force, 16, 64, "Force ^split^ of newfiles reports after n kilobytes (16..64).")
case 16:E_BOOL(15,58, CFG.ca_PlusAll, "Allow ^+%*^ (Plus all) in AreaMgr requests.") case 16:E_BOOL(14,58, CFG.ca_PlusAll, "Allow ^+%*^ (Plus all) in AreaMgr requests.")
case 17:E_BOOL(16,58, CFG.ca_Notify, "Allow turning ^Notify^ messages on or off.") case 17:E_BOOL(15,58, CFG.ca_Notify, "Allow turning ^Notify^ messages on or off.")
case 18:E_BOOL(17,58, CFG.ca_Passwd, "Allow changing the AreaMgr/FileMgr ^password^.") case 18:E_BOOL(16,58, CFG.ca_Passwd, "Allow changing the AreaMgr/FileMgr ^password^.")
case 19:E_BOOL(18,58, CFG.ca_Pause, "Allow the ^Pause^ AreaMgr command.") case 19:E_BOOL(17,58, CFG.ca_Pause, "Allow the ^Pause^ AreaMgr command.")
case 20:E_BOOL(18,58, CFG.ca_SBstrip, "Strip SEEN-BYs across zones.")
} }
} }
} }

View File

@ -892,28 +892,28 @@ void MsgGlobal(void)
Found = TRUE; Found = TRUE;
break; break;
} }
if (Found) if (Found)
break; break;
fseek(tfil, 0, SEEK_SET); fseek(tfil, 0, SEEK_SET);
while (fread(&Sc, sizeof(sysconnect), 1, tfil) == 1) { while (fread(&Sc, sizeof(sysconnect), 1, tfil) == 1) {
if (Sc.aka.zone == 0) { if (Sc.aka.zone == 0) {
fseek(tfil, - sizeof(sysconnect), SEEK_CUR); fseek(tfil, - sizeof(sysconnect), SEEK_CUR);
memset(&Sc, 0, sizeof(sysconnect)); memset(&Sc, 0, sizeof(sysconnect));
Sc.aka.zone = a2.zone; Sc.aka.zone = a2.zone;
Sc.aka.net = a2.net; Sc.aka.net = a2.net;
Sc.aka.node = a2.node; Sc.aka.node = a2.node;
Sc.aka.point = a2.point; Sc.aka.point = a2.point;
Sc.sendto = TRUE; Sc.sendto = TRUE;
Sc.receivefrom = TRUE; Sc.receivefrom = TRUE;
snprintf(Sc.aka.domain, 13, "%s", a2.domain); snprintf(Sc.aka.domain, 13, "%s", a2.domain);
fwrite(&Sc, sizeof(sysconnect), 1, tfil); fwrite(&Sc, sizeof(sysconnect), 1, tfil);
if (SaveMsgRec(marea, FALSE) == 0) { if (SaveMsgRec(marea, FALSE) == 0) {
Done++; Done++;
Syslog('+', "Added %s to area %s", aka2str(a2), msgs.Tag); Syslog('+', "Added %s to area %s", aka2str(a2), msgs.Tag);
}
break;
} }
break;
} }
}
break; break;
case 3: fseek(tfil, 0, SEEK_SET); case 3: fseek(tfil, 0, SEEK_SET);
while (fread(&Sc, sizeof(sysconnect), 1, tfil) == 1) { while (fread(&Sc, sizeof(sysconnect), 1, tfil) == 1) {

View File

@ -474,7 +474,7 @@ void ImportOneline(void)
mbse_mvprintw(5, 6, "8.7.3 IMPORT ONELINERS"); mbse_mvprintw(5, 6, "8.7.3 IMPORT ONELINERS");
set_color(CYAN, BLACK); set_color(CYAN, BLACK);
temp = calloc(PATH_MAX, sizeof(char)); temp = calloc(PATH_MAX, sizeof(char));
memset(temp, 0, sizeof(temp)); memset(temp, 0, sizeof(*temp));
strcpy(temp, edit_str(21, 6,64, temp, (char *)"The ^full path and filename^ of the file to import")); strcpy(temp, edit_str(21, 6,64, temp, (char *)"The ^full path and filename^ of the file to import"));
if (strlen(temp) == 0) { if (strlen(temp) == 0) {
free(temp); free(temp);

View File

@ -117,7 +117,7 @@ static void die(int onsig)
for (i = 1; i < 40; i++) for (i = 1; i < 40; i++)
if (CFG.akavalid[i]) if (CFG.akavalid[i])
fprintf(fp, "AKA %s\n", aka2str(CFG.aka[i])); fprintf(fp, "AKA %s\n", aka2str(CFG.aka[i]));
fprintf(fp, "\n"); fprintf(fp, "\n");
gold_akamatch(fp); gold_akamatch(fp);
fprintf(fp, "; JAM MessageBase Setup\n;\n"); fprintf(fp, "; JAM MessageBase Setup\n;\n");

View File

@ -313,6 +313,7 @@ void load_maincfg(void)
CFG.ca_Notify = TRUE; CFG.ca_Notify = TRUE;
CFG.ca_Passwd = TRUE; CFG.ca_Passwd = TRUE;
CFG.ca_Pause = TRUE; CFG.ca_Pause = TRUE;
CFG.ca_SBstrip = TRUE;
CFG.ca_Check = TRUE; CFG.ca_Check = TRUE;
for (i = 0; i < 32; i++) { for (i = 0; i < 32; i++) {

View File

@ -837,8 +837,8 @@ int each(faddr *addr, char flavor, int isflo, char *fname)
if (*p == '\\') if (*p == '\\')
*p='/'; *p='/';
for (p = buf; *p && isspace(*p); p++); for (p = buf; *p && isspace(*p); p++);
if (*p == '~') if (*p == '~')
continue; continue;
if ((*p == '#') || (*p == '-') || (*p == '^') || (*p == '@')) if ((*p == '#') || (*p == '-') || (*p == '^') || (*p == '@'))
p++; p++;
if (stat(p, &st) != 0) { if (stat(p, &st) != 0) {

View File

@ -84,7 +84,7 @@ void fill_portlist(pp_list **fdp, pp_list *new)
pp_list *tmp, *ta; pp_list *tmp, *ta;
tmp = (pp_list *)malloc(sizeof(pp_list)); tmp = (pp_list *)malloc(sizeof(pp_list));
memset(tmp, 0, sizeof(tmp)); memset(tmp, 0, sizeof(*tmp));
tmp->next = NULL; tmp->next = NULL;
strncpy(tmp->tty, new->tty, 6); strncpy(tmp->tty, new->tty, 6);
tmp->mflags = new->mflags; tmp->mflags = new->mflags;

View File

@ -309,7 +309,7 @@ void disk_getfs_r(char *buf)
if (ans != NULL) if (ans != NULL)
free(ans); free(ans);
ans = NULL; ans = NULL;
return; return;
} }

View File

@ -14,6 +14,7 @@ all:
clean: clean:
rm -f core filelist Makefile.bak rm -f core filelist Makefile.bak
rm -f editor
install: install:
@if [ "`id -un`" != "root" ] ; then \ @if [ "`id -un`" != "root" ] ; then \

View File

@ -35,11 +35,11 @@ case "$1" in
rm -f $MBSE_ROOT/var/sema/* rm -f $MBSE_ROOT/var/sema/*
rm -f $MBSE_ROOT/var/*.LCK rm -f $MBSE_ROOT/var/*.LCK
rm -f $MBSE_ROOT/tmp/mb* rm -f $MBSE_ROOT/tmp/mb*
su mbse -c '$MBSE_ROOT/bin/mbtask' >/dev/null su -m mbse -c '$MBSE_ROOT/bin/mbtask' >/dev/null
echo -n "mbtask " echo -n "mbtask "
sleep 2 sleep 2
if [ -f $MBSE_ROOT/etc/config.data ]; then if [ -f $MBSE_ROOT/etc/config.data ]; then
su mbse -c '$MBSE_ROOT/bin/mbstat open -quiet' su -m mbse -c '$MBSE_ROOT/bin/mbstat open -quiet'
echo -n "opened " echo -n "opened "
fi fi
echo "done." echo "done."
@ -48,7 +48,7 @@ case "$1" in
echo -n "Stopping $DESC: " echo -n "Stopping $DESC: "
if [ -f $MBSE_ROOT/var/run/mbtask ]; then if [ -f $MBSE_ROOT/var/run/mbtask ]; then
echo -n "logoff users " echo -n "logoff users "
su mbse -c '$MBSE_ROOT/bin/mbstat close wait -quiet' >/dev/null su -m mbse -c '$MBSE_ROOT/bin/mbstat close wait -quiet' >/dev/null
echo -n " stopping mbtask" echo -n " stopping mbtask"
pid=$( cat $MBSE_ROOT/var/run/mbtask ) pid=$( cat $MBSE_ROOT/var/run/mbtask )
kill $pid kill $pid

View File

@ -30,6 +30,7 @@ all: ${TARGET}
clean: clean:
rm -f ${TARGET} *.o *.h~ *.c~ core filelist Makefile.bak rm -f ${TARGET} *.o *.h~ *.c~ core filelist Makefile.bak
rm -f login.defs
mbuseradd: ${MBUSERADD_OBJS} mbuseradd: ${MBUSERADD_OBJS}
${CC} -o mbuseradd ${MBUSERADD_OBJS} ${LDFLAGS} ${LIBS} ${CC} -o mbuseradd ${MBUSERADD_OBJS} ${LDFLAGS} ${LIBS}

View File

@ -85,7 +85,7 @@ void dolastlog(struct lastlog *ll, const struct passwd *pw, const char *line, co
if (ll) if (ll)
*ll = newlog; *ll = newlog;
time(&newlog.ll_time); time((time_t *) &newlog.ll_time);
strncpy(newlog.ll_line, line, sizeof newlog.ll_line); strncpy(newlog.ll_line, line, sizeof newlog.ll_line);
#ifdef HAVE_LL_HOST #ifdef HAVE_LL_HOST
strncpy(newlog.ll_host, host, sizeof newlog.ll_host); strncpy(newlog.ll_host, host, sizeof newlog.ll_host);

View File

@ -120,7 +120,7 @@ void checkutmp(int picky)
/* XXX - assumes /dev/tty?? */ /* XXX - assumes /dev/tty?? */
strncpy(utent.ut_id, utent.ut_line + 3, sizeof utent.ut_id); strncpy(utent.ut_id, utent.ut_line + 3, sizeof utent.ut_id);
strcpy(utent.ut_user, "LOGIN"); strcpy(utent.ut_user, "LOGIN");
time(&utent.ut_time); time((time_t *) &utent.ut_time);
} }
} }
@ -294,7 +294,7 @@ void setutmp(const char *name, const char *line, const char *host)
{ {
utent.ut_type = USER_PROCESS; utent.ut_type = USER_PROCESS;
strncpy(utent.ut_user, name, sizeof utent.ut_user); strncpy(utent.ut_user, name, sizeof utent.ut_user);
time(&utent.ut_time); time((time_t *) &utent.ut_time);
/* other fields already filled in by checkutmp above */ /* other fields already filled in by checkutmp above */
setutent(); setutent();
pututline(&utent); pututline(&utent);