diff --git a/html/basic.html b/html/basic.html index 33e02ab8..eae78b13 100755 --- a/html/basic.html +++ b/html/basic.html @@ -1,158 +1,158 @@ - -
- - - - - - --- - + + + + + + + + +Last update 07-Aug-2001
-
- -
MBSE BBS Basic Installation
- -Introduction.
--Before you compile and install MBSE BBS you must first setup the basic -environment. If you don't do this, things will fail. -
- -
Step 1: planning the filesystems.
--MBSE BBS is default installed in /opt/mbse. The spoolfiles (in and -outbound, message bases) go into /var/spool/mbse. In the /opt/mbse -path are several subdirectories, bin for the binaries, etc for the -configuration and some scripts, english, spanish, italian and dutch for the language -files and menus, home for the users homedirectories, log for the -logfiles, magic for the filerequest magicnames, fdb for the files -database, var for some statistic files and tmp as temp directory. -
-Don't use UMSDOS or SAMBA filesystems for the bbs, stick by the standard Linux -filesystems (ext2 or reiserfs). If you intent to make your bbs also accessible -by FTP and WWW you must create the directory structure under the ftp user -behind the pub directory. Read the -ftp server doc for details. If you don't follow these guidlines, you -will run into trouble later and have to spend a lot of time in correcting -this error. -
-The default setup will be as follows:
--/opt/mbse binaries, config and user home directories. -/var/spool/mbse In/outbound, queues, download directories. --
- -
Step 2: Running the installation script.
--The installation script must be run by root. It checks if there is a -previous or failed installation on your system. If that's so the script will -not run. In other words, you can only run this script once. The script makes -backup copies of the system files it changes, these files will get the -extension .mbse To run the installation script you need -the archive mbbsebbs-0.33.nn.tar.gz. -Unpack this archive on your system, in /tmp will do fine: -
-cd /tmp -tar xfvz /path/to/the/mbsebbs-0.33.nn.tar.gz --To start the script type: --cd mbsebbs-0.33.nn -bash ./SETUP.sh --Yes, use bash as shell here. On some systems root doesn't use bash -as login shell, calling the script with bash forces the use of bash. -The script does the following: --
-Then the script will ask you to give a password for user mbse -This password is for system maintenance and for you to make changes to the -bbs. You will need that frequently but you should not make that password -easy to guess of course. The script will then continue again: -- Create the group bbs -
- Create the user mbse -
- Create a .profile for user mbse -
- Create and set owner of directory tree under /opt/mbse -
-
-- The user bbs is added. -
- The password will be removed from user bbs This action -will make changes in /etc/shadow (if you have that) otherwise in /etc/passwd. -On FreeBSD it uses other tools to modify the master database. -
- If they don't exist in the file /etc/services the services fido, tfido -and binkp will be added. -
- If they don't exist in the file /etc/inetd.conf the internet protocols -for the mailer will be added. The inetd is restarted to -activate the changes. -
- -
Step 3: Check the basic installation
--The last screen of the script is about sanity checks. Perform those checks! -If something is wrong, now is the time to fix it. Don't panic and remember -the backups of the system files that are changed are in /etc with the -extension .mbse i.e: those were the original files. -If everythings is allright, then remove the directory /tmp/mbsebbs-0.33.nn: -
-cd /tmp -rm -Rf mbsebbs-0.33.nn --
- -
Step 4: Install the basic packages.
--Login as user mbse. While in the home directory unpack the distribution -archives: -
-tar xfvz /path/to/mbsebbs-0.33.nn.tar.gz --You now have the subdirectory with sources in the right place. -Next build the binaries and install them using the folowing commands: --cd ~/mbsebbs-0.33.nn -./configure -make -su -password: enter root password here -make install -exit --The last part of the installation procedure shows you the location of the bbs -startup script that is added to your system. Because this is your first -time installation, example menus, textfiles and some databases are installed. -If they already exist on your systems (when you do an upgrade) they -will not be installed again. --Now you must start the mbtask daemon by hand by typing /opt/mbse/bin/mbtask. -Check the file /opt/mbse/log/mbtask.log for startup problems. You may notice that -the program mbcico is started everytime, this is not a problem, it simply doesn't work right -now because you haven't configured anything yet. -
- -
Step 5: (RedHat) startup problems.
--From RedHat 6.1 (not the older versions) the behaviour of the -su is changed. This may be true for other distributions since -the end of 1999 and for Mandrake as well. The file
/etc/rc.d/init.d/mbsed
that is -created by the setup script is different then before. The new command -is su - instead of simply su. It might be -that other new distributions also need the extra minus sign. If that's the -case, please let me know and tell me how I can test what version it is. -
- -
Step 6: ready.
--Now the basic environment is finished, the next thing is to install -the scripts, examples and configuration. -
-
-Back to Index - -
++ + diff --git a/html/dist.html b/html/dist.html index 01da8e5f..aa6b70c0 100644 --- a/html/dist.html +++ b/html/dist.html @@ -1,74 +1,74 @@ - - - - - - - - -Last update 07-Aug-2001
+
+ +
MBSE BBS Basic Installation
+ +Introduction.
++Before you compile and install MBSE BBS you must first setup the basic +environment. If you don't do this, things will fail. +
+ +
Step 1: planning the filesystems.
++MBSE BBS is default installed in /opt/mbse. The spoolfiles (in and +outbound, message bases) go into /var/spool/mbse. In the /opt/mbse +path are several subdirectories, bin for the binaries, etc for the +configuration and some scripts, english, spanish, italian and dutch for the language +files and menus, home for the users homedirectories, log for the +logfiles, magic for the filerequest magicnames, fdb for the files +database, var for some statistic files and tmp as temp directory. +
+Don't use UMSDOS or SAMBA filesystems for the bbs, stick by the standard Linux +filesystems (ext2 or reiserfs). If you intent to make your bbs also accessible +by FTP and WWW you must create the directory structure under the ftp user +behind the pub directory. Read the +ftp server doc for details. If you don't follow these guidlines, you +will run into trouble later and have to spend a lot of time in correcting +this error. +
+The default setup will be as follows:
++/opt/mbse binaries, config and user home directories. +/var/spool/mbse In/outbound, queues, download directories. ++
+ +
Step 2: Running the installation script.
++The installation script must be run by root. It checks if there is a +previous or failed installation on your system. If that's so the script will +not run. In other words, you can only run this script once. The script makes +backup copies of the system files it changes, these files will get the +extension .mbse To run the installation script you need +the archive mbbsebbs-0.33.nn.tar.gz. +Unpack this archive on your system, in /tmp will do fine: +
+cd /tmp +tar xfvz /path/to/the/mbsebbs-0.33.nn.tar.gz ++To start the script type: ++cd mbsebbs-0.33.nn +bash ./SETUP.sh ++Yes, use bash as shell here. On some systems root doesn't use bash +as login shell, calling the script with bash forces the use of bash. +The script does the following: ++
+Then the script will ask you to give a password for user mbse +This password is for system maintenance and for you to make changes to the +bbs. You will need that frequently but you should not make that password +easy to guess of course. The script will then continue again: +- Create the group bbs +
- Create the user mbse +
- Create a .profile for user mbse +
- Create and set owner of directory tree under /opt/mbse +
+
+- The user bbs is added. +
- The password will be removed from user bbs This action +will make changes in /etc/shadow (if you have that) otherwise in /etc/passwd. +On FreeBSD it uses other tools to modify the master database. +
- If they don't exist in the file /etc/services the services fido, tfido +and binkp will be added. +
- If they don't exist in the file /etc/inetd.conf the internet protocols +for the mailer will be added. The inetd is restarted to +activate the changes. +
+ +
Step 3: Check the basic installation
++The last screen of the script is about sanity checks. Perform those checks! +If something is wrong, now is the time to fix it. Don't panic and remember +the backups of the system files that are changed are in /etc with the +extension .mbse i.e: those were the original files. +If everythings is allright, then remove the directory /tmp/mbsebbs-0.33.nn: +
+cd /tmp +rm -Rf mbsebbs-0.33.nn ++
+ +
Step 4: Install the basic packages.
++Login as user mbse. While in the home directory unpack the distribution +archives: +
+tar xfvz /path/to/mbsebbs-0.33.nn.tar.gz ++You now have the subdirectory with sources in the right place. +Next build the binaries and install them using the folowing commands: ++cd ~/mbsebbs-0.33.nn +./configure +make +su +password: enter root password here +make install +exit ++The last part of the installation procedure shows you the location of the bbs +startup script that is added to your system. Because this is your first +time installation, example menus, textfiles and some databases are installed. +If they already exist on your systems (when you do an upgrade) they +will not be installed again. ++Now you must start the mbtask daemon by hand by typing /opt/mbse/bin/mbtask. +Check the file /opt/mbse/log/mbtask.log for startup problems. You may notice that +the program mbcico is started everytime, this is not a problem, it simply doesn't work right +now because you haven't configured anything yet. +
+ +
Step 5: (RedHat) startup problems.
++From RedHat 6.1 (not the older versions) the behaviour of the +su is changed. This may be true for other distributions since +the end of 1999 and for Mandrake as well. The file
/etc/rc.d/init.d/mbsed
that is +created by the setup script is different then before. The new command +is su - instead of simply su. It might be +that other new distributions also need the extra minus sign. If that's the +case, please let me know and tell me how I can test what version it is. +
+ +
Step 6: ready.
++Now the basic environment is finished, the next thing is to install +the scripts, examples and configuration. +
+
+Back to Index + +
-Last update 06-Jun-2001
-
- -
Linux Distributions.
-- -
Which distribution
--Linux is available in several distributions, they all have advantages and -disadvantages for bbs use. Which distribution to pick is very personal. -You should also consider the fact if the bbs machine is the same machine on -which you do your daily work on or if you use a seperate system for the bbs. -I will describe the distributions below for use on dedicated bbs computers, -that means you don't do daily work on them and don't use them to play games. -Most important is that this is my personal view. -
- -
Slackware
--I am using MBSE BBS on several Slackware distributions. You can make a very small -setup for MBSE BBS like Zipslack. Not included is the mgetty package. -
- -
Redhat and Mandrake
--I write this as if these are the same which isn't true of course. From MBSE -BBS's point of view they are almost the same, so that's why I treat them as -the same distributions. For people with little Linux experience these -distributions are a good choice if you can spare the diskspace. I haven't -found a simple dedicated setup for the bbs, so the safest way is to install -allmost everything, which is quite simple. This will cost you about 1200 Megs. -Maybe that someone more experienced with these distro's can give more details -on how to build a small server. Please note that from RedHat 6.1 and up the -startup script (/etc/rc.d/init.d/mbsed) is different than before. Maybe -this is needed for Mandrake 6.1 and up too. -
- -
SuSe
--Since SuSE 7.1 the setup scripts are working and tested. Older distro's -might work. -
- -
Debian
--The installation works on a Debian 2.1 and 2.2 distribution without any problems. -How to build an optimized Debian system is not tested by me. -
- -
Famous last words...
--I don't have the diskspace for all kinds of Linux distributions to install -at the same time, with the current size of Linux, I only have 2 versions -installed. Also, I don't buy every new distro that's available. If you have -a problem with that, just send me the new distro on CD to test by snailmail. -
- -
+ + + + + + +Go Back - - - + +
Linux distributions. + + + ++Last update 06-Jun-2001
+
+ +
Linux Distributions.
++ +
Which distribution
++Linux is available in several distributions, they all have advantages and +disadvantages for bbs use. Which distribution to pick is very personal. +You should also consider the fact if the bbs machine is the same machine on +which you do your daily work on or if you use a seperate system for the bbs. +I will describe the distributions below for use on dedicated bbs computers, +that means you don't do daily work on them and don't use them to play games. +Most important is that this is my personal view. +
+ +
Slackware
++I am using MBSE BBS on several Slackware distributions. You can make a very small +setup for MBSE BBS like Zipslack. Not included is the mgetty package. +
+ +
Redhat and Mandrake
++I write this as if these are the same which isn't true of course. From MBSE +BBS's point of view they are almost the same, so that's why I treat them as +the same distributions. For people with little Linux experience these +distributions are a good choice if you can spare the diskspace. I haven't +found a simple dedicated setup for the bbs, so the safest way is to install +allmost everything, which is quite simple. This will cost you about 1200 Megs. +Maybe that someone more experienced with these distro's can give more details +on how to build a small server. Please note that from RedHat 6.1 and up the +startup script (/etc/rc.d/init.d/mbsed) is different than before. Maybe +this is needed for Mandrake 6.1 and up too. +
+ +
SuSe
++Since SuSE 7.1 the setup scripts are working and tested. Older distro's +might work. +
+ +
Debian
++The installation works on a Debian 2.1 and 2.2 distribution without any problems. +How to build an optimized Debian system is not tested by me. +
+ +
Famous last words...
++I don't have the diskspace for all kinds of Linux distributions to install +at the same time, with the current size of Linux, I only have 2 versions +installed. Also, I don't buy every new distro that's available. If you have +a problem with that, just send me the new distro on CD to test by snailmail. +
+ +
- - - - - - -Go Back + + + diff --git a/html/flow.html b/html/flow.html index 4fb4212d..270ad113 100644 --- a/html/flow.html +++ b/html/flow.html @@ -1,169 +1,169 @@ - -
Running a BBS under Linux. - - - --- - - + + + + + + + + +Last update 06-Jun-2001
-
- -
Running a BBS under Linux.
-- -
Introduction
--Everyone who has been running a (single line) BBS under DOS until now will -need to understand that running a BBS under Linux (or any other multitasking -os) is completly different of what you are used to. Under DOS things were -quite simple, from AUTOEXEC.BAT you started a new .BAT file that would run -forever and started all needed programs after each other. -The programs that where started -depended on the errorlevel of the previous program. Only one program could -run at the same time. -
-People who had previous run a BBS on another multitasking os, or were running -a BBS on a small lan with a fileserver and workstations for each line, are -already more used to the idea of running more programs at the same time, -and to "signal" what to do next with semafore files. -
-The Linux aproach is more or less the same, but there are more differences. -The main difference is that there is no mailer connected with the modem waiting -for a call, instead there is a getty process watching your modem(s). Another -big difference is that you don't see what's happening, there is no screen -with the mailer or bbs picture on it. All programs run in the background. If -you don't like that, stop now and go back to your old DOS bbs. It's just the -way everything is done. -
-Programs that must start at specific times (events in DOS), are started from -cron, this is the event scheduler for Linux (and other Unixes). With this -program maintenance can be started, polls created etc. For starting programs -when they are needed there is a taskmanager loaded at system bootup. This -taskmanager "watches" the semafore directory of the bbs and will start what -is needed. -
- -
Waiting for a call .....
--Under Linux this is done with the mgetty program, this is the -process that is connected with each modem (or ISDN adapter) and waits for a -call. The mgetty program (written by Gert Doering, gert@greenie.muc.de) will -detect the call, and find out what or who did make the call. It can detect -incoming humans who want a login prompt, PPP calls from users who want to -make a PPP connection (browsing your BBS whith netscape for example), A fax -machine trying to deliver a fax and finally a mailer trying to establish -an EMSI, FSC-0006 or FSC-0001 session. The mgetty program is responsible for -starting the right client programs. How to do this is explained in the -installation manuals, but be sure to compile it with Fido and PPP support. -
- -
A Human is calling.
--This could be a bbs user. For each user to login to your bbs there must be a -unix account. They automatic create such an account the first time they login -with the bbs account. During the creation of their account the shell that is -installed for there account is the mbsebbs binary, so that's the only thing -that they get if they call in. When they logout the bbs, or drop carrier etc, -the session is ended and mgetty takes over the line again. -Note that they will never can get a Unix shell -unless you install a door in the bbs that calls a shell for them. -
-There are probably more accounts on your system that can callin, mbse is -such an account, this is the MBSE BBS maintenance account. This user will -get the shell prompt. Use good passwords for shell accounts, and never change -your setup so that the root user can directly login except from the console. -If you need root access, login as mbse and type su at the prompt to become -root. You might consider installing SSH on your system for remote maintenance. -
- -
A PPP call is detected.
--Installing a PPP server on your system is beyound the scope of this project. -However if you did install it, users can login your bbs with their favourite -browser and use your bbs. Note that the necessary tools to automatic create -newsgroups don't exist at this time. With the proper setup you can automatic -create and maintain html pages for the file areas. -
- -
A mailer call is detected.
--If a mailer is detected by mgetty, the mbcico program is started and will -take over from mgetty. It will establish a mail session with the caller and -the mail and or files will be exchanged just like any DOS mailer would do. -After the call, mbcico will hangup and mgetty will take control of your modem -again. If there is any mail received, mbcico will place the semafore mailin -so that another process can take care of the received mail. Mbcico will also -detect some IEMSI terminal programs (Frontdoor), and will start the bbs. -
- -
There is mail in the inbound
--As I said before, if the mailin semafore is present, the task manager will -then start the mbfido program that will toss the mail, process any files -received and if necessary it will create other semafore's for example to link -the message bases, start the nodelist compiler etc. Note that this can be done -while there may be a new mailsession going on, a bbs user is online, it doesn't -matter. Processing mail and files can be done real multitasking without any -damage to other processes. -
- -
It's time to poll a node
--At the time that you whish to poll a node, let cron create "poll" requests. -When a poll is created, the semafore scanout is also created. -The taskmanager will then start mbcico at regular intervals so that mail will -get out. If there is no more mail to send, the scanout semafore is removed. -If a timeslot ends, you can just remove the "poll" requests that didn't succeed. -
- -
It's Zone Mail Hour, so now what
--Relax, if you have netmail ready for nodes the -mailer script will try to send these mails to those nodes. If it was crash -mail, and the destination was a non CM node, the mailer will try to send those -mails too. Note that other crashmails are send anytime. Also note that packed -mail and files are not send during ZMH. If a node calls you during ZMH he will -get everything that's waiting, including packed mail and files. The task manager -(more on that later) calculates the Zone Mail Hour from UTC time, you don't -have to change anything for summer- and wintertime. -
- -
Daily maintenane
--This is started by cron jobs. There is no need to take -your bbs lines down during maintenance, you can do it any time of the day. -I have made several scripts for this, daily, weekly and monthly. -
- -
How about system load
--Because Linux is a 32 bit os, not bothered with a graphical user interface -(unless you install it), it has all the time in the world to serve your -bbs programs. Background programs are build to release time to the Linux os, -they don't need to run fast because it's background processing. The bbs and -the mailer, have a low server load although there is no timerelease build -in. Only the bbs has some short moments when it needs a lot of your system, -for example when a user logs in and scans for new mail. The bbs I run is a -486-DX4 100 MHz, 20 MB ram, with 2 analogue lines, this seems to work fine. -When this system's MOBO died, I used a 386DX33 for several months with -20 MB ram, and the only thing users ever noticed was that scanning for new -mail was slower. I think this is the slowest harware that will work. -However, you must always use 16550A uarts for the COM ports. For best -performance use SCSI disks. I noticed that old 5"FH SCSI disks perform better -for bbs usage then modern EIDE disks. This is probably caused by the fact that -the kernel needs more time for the cheap IDE bus. -If you want to use X11 on your bbs, you need more ram and a faster CPU or a -separate machine via a lan and export the display to that machine. -
- -
Go Back -
Running a BBS under Linux. + + + +++ + + diff --git a/html/ftsc/index.htm b/html/ftsc/index.htm index 719bbb52..67b0176f 100644 --- a/html/ftsc/index.htm +++ b/html/ftsc/index.htm @@ -1,101 +1,101 @@ - - - - - - - - -Last update 06-Jun-2001
+
+ +
Running a BBS under Linux.
++ +
Introduction
++Everyone who has been running a (single line) BBS under DOS until now will +need to understand that running a BBS under Linux (or any other multitasking +os) is completly different of what you are used to. Under DOS things were +quite simple, from AUTOEXEC.BAT you started a new .BAT file that would run +forever and started all needed programs after each other. +The programs that where started +depended on the errorlevel of the previous program. Only one program could +run at the same time. +
+People who had previous run a BBS on another multitasking os, or were running +a BBS on a small lan with a fileserver and workstations for each line, are +already more used to the idea of running more programs at the same time, +and to "signal" what to do next with semafore files. +
+The Linux aproach is more or less the same, but there are more differences. +The main difference is that there is no mailer connected with the modem waiting +for a call, instead there is a getty process watching your modem(s). Another +big difference is that you don't see what's happening, there is no screen +with the mailer or bbs picture on it. All programs run in the background. If +you don't like that, stop now and go back to your old DOS bbs. It's just the +way everything is done. +
+Programs that must start at specific times (events in DOS), are started from +cron, this is the event scheduler for Linux (and other Unixes). With this +program maintenance can be started, polls created etc. For starting programs +when they are needed there is a taskmanager loaded at system bootup. This +taskmanager "watches" the semafore directory of the bbs and will start what +is needed. +
+ +
Waiting for a call .....
++Under Linux this is done with the mgetty program, this is the +process that is connected with each modem (or ISDN adapter) and waits for a +call. The mgetty program (written by Gert Doering, gert@greenie.muc.de) will +detect the call, and find out what or who did make the call. It can detect +incoming humans who want a login prompt, PPP calls from users who want to +make a PPP connection (browsing your BBS whith netscape for example), A fax +machine trying to deliver a fax and finally a mailer trying to establish +an EMSI, FSC-0006 or FSC-0001 session. The mgetty program is responsible for +starting the right client programs. How to do this is explained in the +installation manuals, but be sure to compile it with Fido and PPP support. +
+ +
A Human is calling.
++This could be a bbs user. For each user to login to your bbs there must be a +unix account. They automatic create such an account the first time they login +with the bbs account. During the creation of their account the shell that is +installed for there account is the mbsebbs binary, so that's the only thing +that they get if they call in. When they logout the bbs, or drop carrier etc, +the session is ended and mgetty takes over the line again. +Note that they will never can get a Unix shell +unless you install a door in the bbs that calls a shell for them. +
+There are probably more accounts on your system that can callin, mbse is +such an account, this is the MBSE BBS maintenance account. This user will +get the shell prompt. Use good passwords for shell accounts, and never change +your setup so that the root user can directly login except from the console. +If you need root access, login as mbse and type su at the prompt to become +root. You might consider installing SSH on your system for remote maintenance. +
+ +
A PPP call is detected.
++Installing a PPP server on your system is beyound the scope of this project. +However if you did install it, users can login your bbs with their favourite +browser and use your bbs. Note that the necessary tools to automatic create +newsgroups don't exist at this time. With the proper setup you can automatic +create and maintain html pages for the file areas. +
+ +
A mailer call is detected.
++If a mailer is detected by mgetty, the mbcico program is started and will +take over from mgetty. It will establish a mail session with the caller and +the mail and or files will be exchanged just like any DOS mailer would do. +After the call, mbcico will hangup and mgetty will take control of your modem +again. If there is any mail received, mbcico will place the semafore mailin +so that another process can take care of the received mail. Mbcico will also +detect some IEMSI terminal programs (Frontdoor), and will start the bbs. +
+ +
There is mail in the inbound
++As I said before, if the mailin semafore is present, the task manager will +then start the mbfido program that will toss the mail, process any files +received and if necessary it will create other semafore's for example to link +the message bases, start the nodelist compiler etc. Note that this can be done +while there may be a new mailsession going on, a bbs user is online, it doesn't +matter. Processing mail and files can be done real multitasking without any +damage to other processes. +
+ +
It's time to poll a node
++At the time that you whish to poll a node, let cron create "poll" requests. +When a poll is created, the semafore scanout is also created. +The taskmanager will then start mbcico at regular intervals so that mail will +get out. If there is no more mail to send, the scanout semafore is removed. +If a timeslot ends, you can just remove the "poll" requests that didn't succeed. +
+ +
It's Zone Mail Hour, so now what
++Relax, if you have netmail ready for nodes the +mailer script will try to send these mails to those nodes. If it was crash +mail, and the destination was a non CM node, the mailer will try to send those +mails too. Note that other crashmails are send anytime. Also note that packed +mail and files are not send during ZMH. If a node calls you during ZMH he will +get everything that's waiting, including packed mail and files. The task manager +(more on that later) calculates the Zone Mail Hour from UTC time, you don't +have to change anything for summer- and wintertime. +
+ +
Daily maintenane
++This is started by cron jobs. There is no need to take +your bbs lines down during maintenance, you can do it any time of the day. +I have made several scripts for this, daily, weekly and monthly. +
+ +
How about system load
++Because Linux is a 32 bit os, not bothered with a graphical user interface +(unless you install it), it has all the time in the world to serve your +bbs programs. Background programs are build to release time to the Linux os, +they don't need to run fast because it's background processing. The bbs and +the mailer, have a low server load although there is no timerelease build +in. Only the bbs has some short moments when it needs a lot of your system, +for example when a user logs in and scans for new mail. The bbs I run is a +486-DX4 100 MHz, 20 MB ram, with 2 analogue lines, this seems to work fine. +When this system's MOBO died, I used a 386DX33 for several months with +20 MB ram, and the only thing users ever noticed was that scanning for new +mail was slower. I think this is the slowest harware that will work. +However, you must always use 16550A uarts for the COM ports. For best +performance use SCSI disks. I noticed that old 5"FH SCSI disks perform better +for bbs usage then modern EIDE disks. This is probably caused by the fact that +the kernel needs more time for the cheap IDE bus. +If you want to use X11 on your bbs, you need more ram and a faster CPU or a +separate machine via a lan and export the display to that machine. +
+ +
Go Back +
Fidonet Standard Commitee documents. - - - --- - - + + + + + + + + +Last update 11-Aug-2001
-
- -
Fidonet Technical Standards
- -Introduction
--This is an overview of used documents for the development of the MBSE BBS -package. Note that there are more documents, but only the relevant and valid -documents are present here. Also note that these documents are just imported -into html documents without any changes. -
-Michiel Broek. -
- -
-FSC Documents
--
- -- FSC-0035 Transparant Gateways to and from FidoNet, Michael Shiels -
- FSC-0039 A type-2 packet extension proposal M.Howard -
- FSC-0046 A Product Identifier for FidoNet Message Handlers, J.Homrighausen -
- FSC-0048 A Proposed type-2 packet extension, J.Vroonhof -
- FSC-0049 A proposal for passing domain information during FTS-0006 sessions, B.Hartman -
- FSC-0050 A character set identifier for FidoNet message editors, T.Sundblom -
- FSC-0053 Specifications for the ^aFLAGS field, J.Homrighausen -
- FSC-0056 EMSI/IEMSI Protocol Definition, J.Homrighausen -
- FSC-0057 Conference Managers - Specifications For Requests, F.Fabris, J.Homrighausen -
- FSC-0059 Newsgroup Interchange within FidoNet, J.Decker -
- FSC-0062 Nodelist Flag indicating Online Times, D.Thomas -
- FSC-0070 Improving FidoNet/UseNet Gating and Dupe checking, F.Arnoud -
- FSC-0072 The HYDRA file transfer protocol, J.Homrighausen, A.Lenz -
- FSC-0087 File forwarding in FidoNet technology networks, R.Williamson -
- FSC-0088 Compatibility and Link Qualifier Extensions for EMSI Sessions, R.Williamson -
- FSC-0091 ISDN nodelist flags (rev.002), A.Lenz -
- FSC-0092 New control lines for forwarded messages, M.Hohner -
- FSC-0093 Reduced seen-by lines, F.Ellermann -
- -
FSP Documents
--
- - -- FSP-1001 Timezone information in FTN messages, O.Sorensen -
- FSP-1002 Numeric reply indication in FTN subject lines, O.Sorensen -
- FSP-1003 Suggested use of Nodelist Fields, L.Kindness -
- FSP-1004 Standard Fidonet Addressing, L.Kindness -
- FSP-1005 Zone 2 nodelist flags, F.Ellermann -
- FSP-1006 Kludge for specifying e-mail reply addresses, R.v.d.Winkel -
- FSP-1007 Multiple recipient address specification to gateway, R.v.d.Winkel -
- FSP-1008 New control lines for forwarded messages, M.Hohner -
- FSP-1009 Year 2000 issues in FTN software, M.Hohner -
- FSP-1010 Via kludge line specification, C. Turner and J. Homrighausen -
- FSP-1011 BinkP - a protocol for transferring Fidonet mail over reliable connections, Dima Maloff -
-
FTA Documents
- - - --
FTS Documents
--
- -- FTS-0001 A basic FidoNet(r) technical standard, R.Bush -
- FTS-0002 Obsoleted by FTS-0005 -
- FTS-0003 Obsoleted by FTS-0006 -
- FTS-0004 Echomail specification, B.Hartman -
- FTS-0005 Obsoleted by FTS-5000 -
- FTS-0006 YOOHOO and YOOHOO/2U2, V.Perriello -
- FTS-0007 SEAlink protocol extension, P.Becker -
- FTS-0008 Bark file-request protocol extension, P.Becker -
- FTS-0009 Message identification and reply linkage, J.Nutt -
- FTS-4001 Addressing Control Paragraphs, Goran Eriksson -
- FTS-5000 The distribution nodelist, David Hallford -
- FTS-5001 Nodelist flags and user flags, David Hallford -
- -Back to Index -
Fidonet Standard Commitee documents. + + + +++ + + diff --git a/html/gwnews.html b/html/gwnews.html index 708339d3..4bde57e5 100755 --- a/html/gwnews.html +++ b/html/gwnews.html @@ -1,381 +1,381 @@ - - - - - - - - -Last update 11-Aug-2001
+
+ +
Fidonet Technical Standards
+ +Introduction
++This is an overview of used documents for the development of the MBSE BBS +package. Note that there are more documents, but only the relevant and valid +documents are present here. Also note that these documents are just imported +into html documents without any changes. +
+Michiel Broek. +
+ +
+FSC Documents
++
+ +- FSC-0035 Transparant Gateways to and from FidoNet, Michael Shiels +
- FSC-0039 A type-2 packet extension proposal M.Howard +
- FSC-0046 A Product Identifier for FidoNet Message Handlers, J.Homrighausen +
- FSC-0048 A Proposed type-2 packet extension, J.Vroonhof +
- FSC-0049 A proposal for passing domain information during FTS-0006 sessions, B.Hartman +
- FSC-0050 A character set identifier for FidoNet message editors, T.Sundblom +
- FSC-0053 Specifications for the ^aFLAGS field, J.Homrighausen +
- FSC-0056 EMSI/IEMSI Protocol Definition, J.Homrighausen +
- FSC-0057 Conference Managers - Specifications For Requests, F.Fabris, J.Homrighausen +
- FSC-0059 Newsgroup Interchange within FidoNet, J.Decker +
- FSC-0062 Nodelist Flag indicating Online Times, D.Thomas +
- FSC-0070 Improving FidoNet/UseNet Gating and Dupe checking, F.Arnoud +
- FSC-0072 The HYDRA file transfer protocol, J.Homrighausen, A.Lenz +
- FSC-0087 File forwarding in FidoNet technology networks, R.Williamson +
- FSC-0088 Compatibility and Link Qualifier Extensions for EMSI Sessions, R.Williamson +
- FSC-0091 ISDN nodelist flags (rev.002), A.Lenz +
- FSC-0092 New control lines for forwarded messages, M.Hohner +
- FSC-0093 Reduced seen-by lines, F.Ellermann +
+ +
FSP Documents
++
+ + +- FSP-1001 Timezone information in FTN messages, O.Sorensen +
- FSP-1002 Numeric reply indication in FTN subject lines, O.Sorensen +
- FSP-1003 Suggested use of Nodelist Fields, L.Kindness +
- FSP-1004 Standard Fidonet Addressing, L.Kindness +
- FSP-1005 Zone 2 nodelist flags, F.Ellermann +
- FSP-1006 Kludge for specifying e-mail reply addresses, R.v.d.Winkel +
- FSP-1007 Multiple recipient address specification to gateway, R.v.d.Winkel +
- FSP-1008 New control lines for forwarded messages, M.Hohner +
- FSP-1009 Year 2000 issues in FTN software, M.Hohner +
- FSP-1010 Via kludge line specification, C. Turner and J. Homrighausen +
- FSP-1011 BinkP - a protocol for transferring Fidonet mail over reliable connections, Dima Maloff +
+
FTA Documents
+ + + ++
FTS Documents
++
+ +- FTS-0001 A basic FidoNet(r) technical standard, R.Bush +
- FTS-0002 Obsoleted by FTS-0005 +
- FTS-0003 Obsoleted by FTS-0006 +
- FTS-0004 Echomail specification, B.Hartman +
- FTS-0005 Obsoleted by FTS-5000 +
- FTS-0006 YOOHOO and YOOHOO/2U2, V.Perriello +
- FTS-0007 SEAlink protocol extension, P.Becker +
- FTS-0008 Bark file-request protocol extension, P.Becker +
- FTS-0009 Message identification and reply linkage, J.Nutt +
- FTS-4001 Addressing Control Paragraphs, Goran Eriksson +
- FTS-5000 The distribution nodelist, David Hallford +
- FTS-5001 Nodelist flags and user flags, David Hallford +
+ +Back to Index +
MBSE BBS - Internet gateway - INN. - - - --- - - + + + + + + + + +Last update 10-Apr-2001
-
- -
MBSE BBS - Internet Gateway - INN.
-- -
SETUP INND
--Below are the files that you need to setup for INN news. I used inn-2.2.2 on -my system. It is configured to install in /opt/news with the command -./configure --prefix=/opt/news during the installation of -inn. -
-
----## $Revision$ -## inn.conf -- inn configuration data -## Format: -##
-: -## -## See the inn.conf(5) man page for a full description of each -## of these options -## -## Blank values are allowed for certain parameters -## --------------------------------- -# All parameters must exist -# -organization: MBSE BBS Development Site -server: localhost -pathhost: news.mbse.nl -moderatormailer: -domain: mbse.nl -fromhost: news.mbse.nl -pathalias: -complaints: abuse@f2802.n280.z2.fidonet.org -mta: /usr/sbin/sendmail -oi %s -mailcmd: /opt/news/bin/innmail -checkincludedtext: false -maxforks: 10 -maxartsize: 1000000 -nicekids: 4 -nicenewnews: 0 -verifycancels: false -logcancelcomm: false -wanttrash: false -remembertrash: true -linecountfuzz: 0 -peertimeout: 3600 -clienttimeout: 600 -allownewnews: true -localmaxartsize: 1000000 -logartsize: true -logipaddr: true -logsitename: true -maxconnections: 50 -artcutoff: 14 -icdsynccount: 10 -hiscachesize: 0 -readertrack: false -strippostcc: false -status: 0 -timer: 0 -readerswhenstopped: false -noreader: false -extendeddbz: false -nnrpdoverstats: false -storeonxref: true -nnrpdcheckart: true -storemsgid: true -usecontrolchan: false -mergetogroups: false -backoffauth: false -backoffdb: /opt/news/db/backoff -backoffpostfast: 0L -backoffpostslow: 1L -backofftrigger: 10000L -mimeversion: -mimecontenttype: -mimeencoding: -refusecybercancels: false -activedenable: false -activedupdate: 30 -activedport: 1119 -nnrpperlauth: false -# -# -# These options are unlikely to need changing in most situations -# -chaninacttime: 600 -chanretrytime: 300 -pauseretrytime: 300 -nntplinklog: false -nntpactsync: 200 -badiocount: 5 -blockbackoff: 120 -# -# --------------------------------- -# Changing these options can have an effect on the way articles are -# stored and may require recreating the spool and/or database files -# -wireformat: false -xrefslave: false -nnrpdposthost: -nnrpdpostport: 119 -spoolfirst: false -writelinks: true -storageapi: false -articlemmap: false -overviewmmap: true -bindaddress: all -sourceaddress: any -port: 119 -# -## Keywords-in-overview options -## Enabling this without stopping innd and deleting the existing overview -## database and adding will probably confuse a lot of things. You must -## have compiled this support in too. -# -keywords: false -keylimit: 512 -keyartlimit: 100000 -keymaxwords: 250 -# -# Other options -innflags: -doinnwatch: true -innwatchsleeptime: 600 -pgpverify: false -controlfailnotice: false -logcycles: 3 -innwatchpauseload: 1500 -innwatchhiload: 2000 -innwatchloload: 1000 -innwatchspoolspace: 8000 -innwatchbatchspace: 800 -innwatchlibspace: 25000 -innwatchspoolnodes: 200 -docnfsstat: false -# -# --------------------------------- -# Paths to various aspects of the news system -# -pathnews: /opt/news -pathbin: /opt/news/bin -pathfilter: /opt/news/bin/filter -pathcontrol: /opt/news/bin/control -pathdb: /opt/news/db -pathetc: /opt/news/etc -pathrun: /opt/news/run -pathlog: /opt/news/log -pathhttp: /opt/news/log -pathtmp: /opt/news/tmp -pathspool: /opt/news/spool -patharticles: /opt/news/spool/articles -pathoverview: /opt/news/spool/overview -pathoutgoing: /opt/news/spool/outgoing -pathincoming: /opt/news/spool/incoming -patharchive: /opt/news/spool/archive -pathuniover: /opt/news/spool/uniover -overviewname: .overview -# -# --------------------------------- -# -
- --## $Revision$ -## expire.ctl - expire control file -## Format: -## /remember/:<keep> -## <patterns>:<modflag>:<keep>:<default>:<purge> -## First line gives history retention; other lines specify expiration -## for newsgroups. Must have a "*:A:..." line which is the default. -## <patterns> wildmat-style patterns for the newsgroups -## <modflag> Pick one of M U A -- modifies pattern to be only -## moderated, unmoderated, or all groups -## <keep> Mininum number of days to keep article -## <default> Default number of days to keep the article -## <purge> Flush article after this many days -## <keep>, <default>, and <purge> can be floating-point numbers or the -## word "never." Times are based on when received unless -p is used; -## see expire.8 - -## If article expires before 14 days, we still remember it for 14 days in -## case we get offered it again. Depending on what you use for the innd -## -c flag and how paranoid you are about old news, you might want to -## make this 28, 30, etc. -/remember/:14 - -## Keep for 1-10 days, allow Expires headers to work. -*:A:1:10:never - -fido.*:A:1:30:60 -comp.*:A:1:30:60 -local.*:A:1:30:60 -nl.*:A:1:30:60 - -## Some particular groups stay forever. -# Keep FAQ's for a month, so they're always available -#*.answers:M:1:35:90 -news.announce.*:M:1:35:90 - -# Some other recommendations. Uncomment if you want -# .announce groups tend to be low-traffic, high signal. -# *.announce:M:1:30:90 -# Weather forecasts -# *.weather:A:1:2:7 -# test posts -# *.test:A:1:1:1 - -## Some particular groups stay forever. -# dc.dining*:A:never:never:never -# uunet*:A:never:never:never --
--## $Revision$ -## Mailing addresses for moderators. -## Format: -## <newsgroup>:<pathname> -## First match found is used. -## <newsgroup> Shell-style newsgroup pattern or specific newsgroup -## <pathname> Mail address, "%s" becomes newgroup name with dots -## changed to dashes. - -## Russian hierarchies -fido7.*:%s@fido7.ru -medlux.*:%s@news.medlux.ru -relcom.*:%s@moderators.relcom.ru - -## Direct all public hierarchies to the master moderator database. -*:%s@moderators.isc.org --
--## $Revision$ -## newsfeeds - determine where Usenet articles get sent -## Format: -## site[/exclude,exclude...]\ -## :pattern,pattern...[/distrib,distrib...]\ -## :flag,flag...\ -## :param -## Summary of flags: -## <size Article must be less then size bytes. -## >size Article must be more then size bytes. -## Aitems Article checks -- d (must have Distribution header) -## p (don't check for site in Path header) -## c (no control messages) C (only control messages) -## e (all groups must exist). -## Bhigh/low Internal buffer size before writing to output. -## Fname Name of the spool file. -## Gcount Crossposts limited to count groups. -## H[count] Article must have less then count hops; default is 1. -## Isize Internal buffer size (if a file feed) -## Nm Only moderated groups that match the patterns. -## Nu Only unmoderated groups that match the patterns. -## Ppriority Nice priority of channel or program feed. -## Ooriginator First field of X-Trace must match originator (wildmat). -## Ssize Start spooling if more than size bytes get queued. -## Ttype Feed types -- f (file) m (funnel; param names the -## real entry) p (pipe to program) c (send to stdin -## channel of param's sub-process) x (like c, but -## handles commands on stdin) x (log entry only). -## Witems What to write -- b (article bytesize) f (full path) -## g (first newsgroup) h (Message-ID hash) -## m (Message-ID) n (relative path) p (posted time) -## s (site that fed article) t (time received) -## * (names of funnel feed-in's or all sites that get -## the article) N (Newsgroups header) D (Distribution -## header) H (all headers) O (overview data) -## P (path header) R (replication information) -## Param field depends on T flag. For Tf, relative paths are from the -## out.going directory. For Tp and Tc, it is a shell command to execute. -## If a Tm refers to this entry (which will have its own T param) then "*" -## is expanded to all the funnel sites that triggered this one. Useful -## for spawning one mail process, e.g. -## -## This file is complicated -- see newsfeeds.5! - -## This is the local site. -## The "pattern" field gives the initial subscription list for -## all other sites. You might want to put "!control,!junk,!-.*" -## there. The "distrib" subfield limits incoming articles. -## -## You can also have ME/bad.site: to refuse articles from a particular -## site (by matching the Path: entry). Other pseudo-sites may be put -## in here, to REFUSE certain types of 3rd-party cancel messages -## (See the "Cancel FAQ" news.admin.net-abuse.misc): -## cyberspam Spam cancels, munged articles, binary postings -## spewcancel just munged articles from runaway gateways -## bincancel just binary postings to non-binaries groups -## -## Note that refusing articles means you won't offer them to sites you feed - -## Default of everything to everybody except for junk, control, anything -## with "local" as the newsgroup prefix (i.e. matches "localhost.stuff") or -## groups under foo. Articles posted to any group under alt.binaries.warez -## will not get propagated, even if they're cross posted to something that -## is. -ME\ - :*,!junk,!control*,!foo.*/fido,local\ - :: - -## news.wxs.nl via rpost (suck) -news.wxs.nl/news.wxs.nl:*,!control,!junk,!fido.*,!iba.*,!local.*/!local,!fido:: - -## News overview -# use this flag if storage api is used -#overview!:*:Tc,Ao,WhR,S30000:/opt/news/bin/overchan -# else -overview!:*:Tc,WO,S30000:/opt/news/bin/overchan - -
--## $Revision$ -## distrib.pats -- specify default Distribution header for newsgroups -## Format: -## <weight>:<pattern>:<value> -## All articles are matched against all patterns, value to be used is the -## one with the highest weight. -## <weight> The weight assigned to this match, integer -## <pattern> Newsgroup name or single wildmat(3) pattern -## <value> Value of Distribution header. -## -## -## Uncomment to default all local.* groups to a distribution of local. -#10:local.*:local -10:local.*:local -10:fido.*:fido --
--## $Revision$ -## nnrp.access - access file for on-campus NNTP sites -## Format: -## <host>:<perm>:<user>:<pass>:<groups> -## <host>:</path/file> -## Connecting host must be found in this file; the last match found is -## used, so put defaults first. -## <host> Wildcard name or IP address -## <perm> R to read; P to post -## <user> Username for authentication before posting -## <pass> Password, for same reason -## <groups> Newsgroup patterns that can be read or not read -## </path/file> A second file to scan in the same format as this -## To disable posting put a space in the <user> and <pass> fields, since -## there is no way for client to enter one. -## -## Default is no access, no way to authentication, and no groups. -*::::!* -stdin:Read Post:::* -localhost:Read Post:::* -127.0.0.1:Read Post:::* -*.mbse.nl:Read Post:::* --
- -Go back -
Go to main - -
MBSE BBS - Internet gateway - INN. + + + +++ + + diff --git a/html/images/e_menu.gif b/html/images/e_menu.gif index a2b773ec..3b225ce2 100644 Binary files a/html/images/e_menu.gif and b/html/images/e_menu.gif differ diff --git a/html/install.html b/html/install.html index f71dd1d6..43bc3f65 100755 --- a/html/install.html +++ b/html/install.html @@ -1,54 +1,54 @@ - - - - - - - - -Last update 10-Apr-2001
+
+ +
MBSE BBS - Internet Gateway - INN.
++ +
SETUP INND
++Below are the files that you need to setup for INN news. I used inn-2.2.2 on +my system. It is configured to install in /opt/news with the command +./configure --prefix=/opt/news during the installation of +inn. +
+
++++## $Revision$ +## inn.conf -- inn configuration data +## Format: +##
+: +## +## See the inn.conf(5) man page for a full description of each +## of these options +## +## Blank values are allowed for certain parameters +## --------------------------------- +# All parameters must exist +# +organization: MBSE BBS Development Site +server: localhost +pathhost: news.mbse.nl +moderatormailer: +domain: mbse.nl +fromhost: news.mbse.nl +pathalias: +complaints: abuse@f2802.n280.z2.fidonet.org +mta: /usr/sbin/sendmail -oi %s +mailcmd: /opt/news/bin/innmail +checkincludedtext: false +maxforks: 10 +maxartsize: 1000000 +nicekids: 4 +nicenewnews: 0 +verifycancels: false +logcancelcomm: false +wanttrash: false +remembertrash: true +linecountfuzz: 0 +peertimeout: 3600 +clienttimeout: 600 +allownewnews: true +localmaxartsize: 1000000 +logartsize: true +logipaddr: true +logsitename: true +maxconnections: 50 +artcutoff: 14 +icdsynccount: 10 +hiscachesize: 0 +readertrack: false +strippostcc: false +status: 0 +timer: 0 +readerswhenstopped: false +noreader: false +extendeddbz: false +nnrpdoverstats: false +storeonxref: true +nnrpdcheckart: true +storemsgid: true +usecontrolchan: false +mergetogroups: false +backoffauth: false +backoffdb: /opt/news/db/backoff +backoffpostfast: 0L +backoffpostslow: 1L +backofftrigger: 10000L +mimeversion: +mimecontenttype: +mimeencoding: +refusecybercancels: false +activedenable: false +activedupdate: 30 +activedport: 1119 +nnrpperlauth: false +# +# +# These options are unlikely to need changing in most situations +# +chaninacttime: 600 +chanretrytime: 300 +pauseretrytime: 300 +nntplinklog: false +nntpactsync: 200 +badiocount: 5 +blockbackoff: 120 +# +# --------------------------------- +# Changing these options can have an effect on the way articles are +# stored and may require recreating the spool and/or database files +# +wireformat: false +xrefslave: false +nnrpdposthost: +nnrpdpostport: 119 +spoolfirst: false +writelinks: true +storageapi: false +articlemmap: false +overviewmmap: true +bindaddress: all +sourceaddress: any +port: 119 +# +## Keywords-in-overview options +## Enabling this without stopping innd and deleting the existing overview +## database and adding will probably confuse a lot of things. You must +## have compiled this support in too. +# +keywords: false +keylimit: 512 +keyartlimit: 100000 +keymaxwords: 250 +# +# Other options +innflags: +doinnwatch: true +innwatchsleeptime: 600 +pgpverify: false +controlfailnotice: false +logcycles: 3 +innwatchpauseload: 1500 +innwatchhiload: 2000 +innwatchloload: 1000 +innwatchspoolspace: 8000 +innwatchbatchspace: 800 +innwatchlibspace: 25000 +innwatchspoolnodes: 200 +docnfsstat: false +# +# --------------------------------- +# Paths to various aspects of the news system +# +pathnews: /opt/news +pathbin: /opt/news/bin +pathfilter: /opt/news/bin/filter +pathcontrol: /opt/news/bin/control +pathdb: /opt/news/db +pathetc: /opt/news/etc +pathrun: /opt/news/run +pathlog: /opt/news/log +pathhttp: /opt/news/log +pathtmp: /opt/news/tmp +pathspool: /opt/news/spool +patharticles: /opt/news/spool/articles +pathoverview: /opt/news/spool/overview +pathoutgoing: /opt/news/spool/outgoing +pathincoming: /opt/news/spool/incoming +patharchive: /opt/news/spool/archive +pathuniover: /opt/news/spool/uniover +overviewname: .overview +# +# --------------------------------- +# +
+ ++## $Revision$ +## expire.ctl - expire control file +## Format: +## /remember/:<keep> +## <patterns>:<modflag>:<keep>:<default>:<purge> +## First line gives history retention; other lines specify expiration +## for newsgroups. Must have a "*:A:..." line which is the default. +## <patterns> wildmat-style patterns for the newsgroups +## <modflag> Pick one of M U A -- modifies pattern to be only +## moderated, unmoderated, or all groups +## <keep> Mininum number of days to keep article +## <default> Default number of days to keep the article +## <purge> Flush article after this many days +## <keep>, <default>, and <purge> can be floating-point numbers or the +## word "never." Times are based on when received unless -p is used; +## see expire.8 + +## If article expires before 14 days, we still remember it for 14 days in +## case we get offered it again. Depending on what you use for the innd +## -c flag and how paranoid you are about old news, you might want to +## make this 28, 30, etc. +/remember/:14 + +## Keep for 1-10 days, allow Expires headers to work. +*:A:1:10:never + +fido.*:A:1:30:60 +comp.*:A:1:30:60 +local.*:A:1:30:60 +nl.*:A:1:30:60 + +## Some particular groups stay forever. +# Keep FAQ's for a month, so they're always available +#*.answers:M:1:35:90 +news.announce.*:M:1:35:90 + +# Some other recommendations. Uncomment if you want +# .announce groups tend to be low-traffic, high signal. +# *.announce:M:1:30:90 +# Weather forecasts +# *.weather:A:1:2:7 +# test posts +# *.test:A:1:1:1 + +## Some particular groups stay forever. +# dc.dining*:A:never:never:never +# uunet*:A:never:never:never ++
++## $Revision$ +## Mailing addresses for moderators. +## Format: +## <newsgroup>:<pathname> +## First match found is used. +## <newsgroup> Shell-style newsgroup pattern or specific newsgroup +## <pathname> Mail address, "%s" becomes newgroup name with dots +## changed to dashes. + +## Russian hierarchies +fido7.*:%s@fido7.ru +medlux.*:%s@news.medlux.ru +relcom.*:%s@moderators.relcom.ru + +## Direct all public hierarchies to the master moderator database. +*:%s@moderators.isc.org ++
++## $Revision$ +## newsfeeds - determine where Usenet articles get sent +## Format: +## site[/exclude,exclude...]\ +## :pattern,pattern...[/distrib,distrib...]\ +## :flag,flag...\ +## :param +## Summary of flags: +## <size Article must be less then size bytes. +## >size Article must be more then size bytes. +## Aitems Article checks -- d (must have Distribution header) +## p (don't check for site in Path header) +## c (no control messages) C (only control messages) +## e (all groups must exist). +## Bhigh/low Internal buffer size before writing to output. +## Fname Name of the spool file. +## Gcount Crossposts limited to count groups. +## H[count] Article must have less then count hops; default is 1. +## Isize Internal buffer size (if a file feed) +## Nm Only moderated groups that match the patterns. +## Nu Only unmoderated groups that match the patterns. +## Ppriority Nice priority of channel or program feed. +## Ooriginator First field of X-Trace must match originator (wildmat). +## Ssize Start spooling if more than size bytes get queued. +## Ttype Feed types -- f (file) m (funnel; param names the +## real entry) p (pipe to program) c (send to stdin +## channel of param's sub-process) x (like c, but +## handles commands on stdin) x (log entry only). +## Witems What to write -- b (article bytesize) f (full path) +## g (first newsgroup) h (Message-ID hash) +## m (Message-ID) n (relative path) p (posted time) +## s (site that fed article) t (time received) +## * (names of funnel feed-in's or all sites that get +## the article) N (Newsgroups header) D (Distribution +## header) H (all headers) O (overview data) +## P (path header) R (replication information) +## Param field depends on T flag. For Tf, relative paths are from the +## out.going directory. For Tp and Tc, it is a shell command to execute. +## If a Tm refers to this entry (which will have its own T param) then "*" +## is expanded to all the funnel sites that triggered this one. Useful +## for spawning one mail process, e.g. +## +## This file is complicated -- see newsfeeds.5! + +## This is the local site. +## The "pattern" field gives the initial subscription list for +## all other sites. You might want to put "!control,!junk,!+.*" +## there. The "distrib" subfield limits incoming articles. +## +## You can also have ME/bad.site: to refuse articles from a particular +## site (by matching the Path: entry). Other pseudo-sites may be put +## in here, to REFUSE certain types of 3rd-party cancel messages +## (See the "Cancel FAQ" news.admin.net-abuse.misc): +## cyberspam Spam cancels, munged articles, binary postings +## spewcancel just munged articles from runaway gateways +## bincancel just binary postings to non-binaries groups +## +## Note that refusing articles means you won't offer them to sites you feed + +## Default of everything to everybody except for junk, control, anything +## with "local" as the newsgroup prefix (i.e. matches "localhost.stuff") or +## groups under foo. Articles posted to any group under alt.binaries.warez +## will not get propagated, even if they're cross posted to something that +## is. +ME\ + :*,!junk,!control*,!foo.*/fido,local\ + :: + +## news.wxs.nl via rpost (suck) +news.wxs.nl/news.wxs.nl:*,!control,!junk,!fido.*,!iba.*,!local.*/!local,!fido:: + +## News overview +# use this flag if storage api is used +#overview!:*:Tc,Ao,WhR,S30000:/opt/news/bin/overchan +# else +overview!:*:Tc,WO,S30000:/opt/news/bin/overchan + +
++## $Revision$ +## distrib.pats -- specify default Distribution header for newsgroups +## Format: +## <weight>:<pattern>:<value> +## All articles are matched against all patterns, value to be used is the +## one with the highest weight. +## <weight> The weight assigned to this match, integer +## <pattern> Newsgroup name or single wildmat(3) pattern +## <value> Value of Distribution header. +## +## +## Uncomment to default all local.* groups to a distribution of local. +#10:local.*:local +10:local.*:local +10:fido.*:fido ++
++## $Revision$ +## nnrp.access - access file for on-campus NNTP sites +## Format: +## <host>:<perm>:<user>:<pass>:<groups> +## <host>:</path/file> +## Connecting host must be found in this file; the last match found is +## used, so put defaults first. +## <host> Wildcard name or IP address +## <perm> R to read; P to post +## <user> Username for authentication before posting +## <pass> Password, for same reason +## <groups> Newsgroup patterns that can be read or not read +## </path/file> A second file to scan in the same format as this +## To disable posting put a space in the <user> and <pass> fields, since +## there is no way for client to enter one. +## +## Default is no access, no way to authentication, and no groups. +*::::!* +stdin:Read Post:::* +localhost:Read Post:::* +127.0.0.1:Read Post:::* +*.mbse.nl:Read Post:::* ++
+ +Go back +
Go to main + +
Running a BBS under Linux. - - - --- - - + + + + + + + + +Last update 03-Jul-2001
-
- -
-Installing the BBS. - - -Installing the BBS.
- - -Installing the BBS.
--Now you have shell scripts in ~/etc, most of them are called by cron, some -are called during system startup and shutdown. You also have some default -configuration files, these are ttyinfo, modems, fidonet networks. In the -default (english) directory you now have default menu datafiles and ansi -screens. These are copies of my test system so you have to edit them to -build your own bbs.
-Editing ansi screens can be done on a Linux system with duhdraw, -this is available from 2:280/2802 as duhdraw.tgz (68 Kbytes). -The binaries are included in this archive, if you compile it yourself -it may give trouble so if the binaries work, use these.
-Another editor is available from -http://www.drastic.net/bmdraw/, -you can find the tar.gz file in -http://www.drastic.net/bmdraw/files/bmd022.tgz, it's about 36 Kbytes. -This is also a thedraw clone for Linux. Note, at my system I needed to run it as root.
-You may also want to edit ~/etc/header.txt and ~/etc/footer.txt, these -files are the top and bottom of the newfiles/allfiles listings. - --
the next step.
--The next step is the setup of the bbs. -
- -
Back to Index -
Running a BBS under Linux. + + + +++ + + diff --git a/html/intergate.html b/html/intergate.html index 6b341f27..9588140c 100644 --- a/html/intergate.html +++ b/html/intergate.html @@ -1,102 +1,102 @@ - - - - - - - - -Last update 03-Jul-2001
+
+ +
+Installing the BBS. + + +Installing the BBS.
+ + +Installing the BBS.
++Now you have shell scripts in ~/etc, most of them are called by cron, some +are called during system startup and shutdown. You also have some default +configuration files, these are ttyinfo, modems, fidonet networks. In the +default (english) directory you now have default menu datafiles and ansi +screens. These are copies of my test system so you have to edit them to +build your own bbs.
+Editing ansi screens can be done on a Linux system with duhdraw, +this is available from 2:280/2802 as duhdraw.tgz (68 Kbytes). +The binaries are included in this archive, if you compile it yourself +it may give trouble so if the binaries work, use these.
+Another editor is available from +http://www.drastic.net/bmdraw/, +you can find the tar.gz file in +http://www.drastic.net/bmdraw/files/bmd022.tgz, it's about 36 Kbytes. +This is also a thedraw clone for Linux. Note, at my system I needed to run it as root.
+You may also want to edit ~/etc/header.txt and ~/etc/footer.txt, these +files are the top and bottom of the newfiles/allfiles listings. + ++
the next step.
++The next step is the setup of the bbs. +
+ +
Back to Index +
MBSE BBS - Internet gateway. - - - --- - - + + + + + + + + +Last update 26-Apr-2001
-
- -
MBSE BBS - Internet Gateway.
-- -
WARNING: THIS IS DIFFERENT FROM VERSION 0.33.14 AND UP
-- -
Introduction.
--Since version 0.33.14 the email gateway is build into MBSE BBS and since -version 0.33.15 the newsgateway is build into MBSE BBS. Since version 0.33.16 the -newsgateway to UUCP nodes is added. To route -email trafic to and from the internet you need a internet MTA. I stopped using -sendmail for this because it gave too much trouble setting it -up together with MBSE BBS. -Today I use Postfix, -a well documented, secure and easy to setup MTA. For the actual gate from -Postfix to the BBS you I use mbmail which you need to add to the -Postfix configuration.
-
-There may be two reasons to create a gateway, one is to gate internet news and -email to the Fidonet bbs users, another reason may be that you want to make -echomail as news available on your system so that users can connect to your -bbs with their favourite browser an get the mail and news using pop3 and -nntp protocols. The setup is the same for both reasons so I will make one -description for the whole setup. -
- -
Setup a newsgate node with inn.
--If you only want to gate internet news to your bbs users and not want to -make echomail available as news, and you have a permament internet connection -then you don't need your own news server. Just configure MBSE BBS to use the -newsserver of your ISP in screen 1.14 with mbsetup. All other users need -to run a newsserver on the bbs machine or another networked machine. You -could use inn news for a newsserver. -To connect a small feed with your ISP you could use suck. -
-In each echomail area you want to gate you need to fill in the newsgroup -name of that area and echomail received in that area will automatic be -posted to that newsgroup. The command mbfido news will check all -configured newsgroups for new newsarticles. If you set it up for the first -time you need to run mbfido news -learn to fill the dupes -database for news with all the already existing news articles. If you skip -that, you may get a lot of old articles that will be gated. Just run that -command once after you have set this up. Later when you receive fresh articles -the command mbfido news will only gate new arrived articles. -See the configuration of INN news configuration. -
- -
Setup a newsgate with rnews.
--This is the setup if you don't want an NNTP newsserver like inn, but a simple -cnews setup for UUCP links only. In mbsetup menu 1.14 you need -to set this up. You need to fill in the path to the rnews program so that -mbfido can post articles to cnews. MORE INFO NEEDED. -
-In each echomail area you want to gate you need to fill in the newsgroup -name of that area and echomail received in that area will automatic be -posted to that newsgroup. -
- -
Setup a newsgate via UUCP.
--With this setup you don't run a local newsserver, only your bbs users and -Fidonet links can then use news. You need to install uucp -on your system. With mbsetup menu 1.14 you need to set this -up. Suppose your ISP's nodename is xs4all the you probably need to set the -UUCP path to
/var/spool/uucp/xs4all
and the UUCP node to -xs4all
. Your own nodename will be your system's hostname without -the domain part. --In each echomail area you want to gate you need to fill in the newsgroup -name of that area and echomail received in that area will automatic be -posted to that newsgroup. -
- -
Setup a email gate.
--See Postfix (email) configuration -
- -
Go Back -
MBSE BBS - Internet gateway. + + + +++ + + diff --git a/html/intro.html b/html/intro.html index 56443d68..07f54081 100644 --- a/html/intro.html +++ b/html/intro.html @@ -1,99 +1,99 @@ - - - - - - - - -Last update 26-Apr-2001
+
+ +
MBSE BBS - Internet Gateway.
++ +
WARNING: THIS IS DIFFERENT FROM VERSION 0.33.14 AND UP
++ +
Introduction.
++Since version 0.33.14 the email gateway is build into MBSE BBS and since +version 0.33.15 the newsgateway is build into MBSE BBS. Since version 0.33.16 the +newsgateway to UUCP nodes is added. To route +email trafic to and from the internet you need a internet MTA. I stopped using +sendmail for this because it gave too much trouble setting it +up together with MBSE BBS. +Today I use Postfix, +a well documented, secure and easy to setup MTA. For the actual gate from +Postfix to the BBS you I use mbmail which you need to add to the +Postfix configuration.
+
+There may be two reasons to create a gateway, one is to gate internet news and +email to the Fidonet bbs users, another reason may be that you want to make +echomail as news available on your system so that users can connect to your +bbs with their favourite browser an get the mail and news using pop3 and +nntp protocols. The setup is the same for both reasons so I will make one +description for the whole setup. +
+ +
Setup a newsgate node with inn.
++If you only want to gate internet news to your bbs users and not want to +make echomail available as news, and you have a permament internet connection +then you don't need your own news server. Just configure MBSE BBS to use the +newsserver of your ISP in screen 1.14 with mbsetup. All other users need +to run a newsserver on the bbs machine or another networked machine. You +could use inn news for a newsserver. +To connect a small feed with your ISP you could use suck. +
+In each echomail area you want to gate you need to fill in the newsgroup +name of that area and echomail received in that area will automatic be +posted to that newsgroup. The command mbfido news will check all +configured newsgroups for new newsarticles. If you set it up for the first +time you need to run mbfido news -learn to fill the dupes +database for news with all the already existing news articles. If you skip +that, you may get a lot of old articles that will be gated. Just run that +command once after you have set this up. Later when you receive fresh articles +the command mbfido news will only gate new arrived articles. +See the configuration of INN news configuration. +
+ +
Setup a newsgate with rnews.
++This is the setup if you don't want an NNTP newsserver like inn, but a simple +cnews setup for UUCP links only. In mbsetup menu 1.14 you need +to set this up. You need to fill in the path to the rnews program so that +mbfido can post articles to cnews. MORE INFO NEEDED. +
+In each echomail area you want to gate you need to fill in the newsgroup +name of that area and echomail received in that area will automatic be +posted to that newsgroup. +
+ +
Setup a newsgate via UUCP.
++With this setup you don't run a local newsserver, only your bbs users and +Fidonet links can then use news. You need to install uucp +on your system. With mbsetup menu 1.14 you need to set this +up. Suppose your ISP's nodename is xs4all the you probably need to set the +UUCP path to
/var/spool/uucp/xs4all
and the UUCP node to +xs4all
. Your own nodename will be your system's hostname without +the domain part. ++In each echomail area you want to gate you need to fill in the newsgroup +name of that area and echomail received in that area will automatic be +posted to that newsgroup. +
+ +
Setup a email gate.
++See Postfix (email) configuration +
+ +
Go Back +
Running a BBS under Linux. - - - --- - - + + + + + + + + +Last update 28-Jan-2001
-
-
Introduction to MBSE BBS.
-- -
Distribution.
--There are only five official distribution sites for the mbse bbs package. They are: -
-
-If you find mbse bbs on another site it may be out of date. I have no control over these sites. -New versions of mbse bbs are announced in the fidonet area LINUX_BBS. On the official fidonet -nodes you can request the latest version with the magic MBSEBBS. You will then get a zip file, -in this zip file is the original tar.gz file. This is to let systems who only support 8.3 -filenames to pickup the distribution package. You can also subscribe to the mailinglist -mbse-announce@lists.sourceforge.net to receive announcements. This will also work for fidonet -systems if you send your netmail via the official fido/internet gateway. You can also -subscribe online at sourceforge -- http://mbse.sourceforge.net Primary site -
- http://mbse.freezer-burn.org Mirror site -
- http://www.telematique.org/mbse Mirror site -
- fidonet node 2:280/2802 (+31-255-515973). -
- fidonet node 2:280/2801 (+31-255-533858). -
- -
History.
--At the end of 1997 I was looking for several BBS systems that could run on -Linux and it must be capable to run Fidonet mail. After reviewing almost -all packages that were available at that time I found that there were no -packages that suited my needs. Some had the plain user interfaces that -my bbs users were used to but no Fidonet capabilities, others looked -awfull or were difficult to use by normal bbs users without Unix experience. -I also didn't want to run shareware anymore, one day you pay for some program, -and the next day support is over because the writer of that program decided -to stop development or simply dissapears from the Fidonet stage. With all -Y2K problems ahead the solution should be Open Software so that you have -the sources in case something goes wrong. -One package was very interesting and had the look and feel of RemoteAcces, -that package was RapidBBS. There was only one problem, it had no Fidonet -capabilities. I rewrote the data structures and created a deamon that should -control all bbs acivities. In march 1998 I started writing the mbfido program -that should handle all Fidonet mail and .tic files. In june 1998 the final -message base format became JAM using the LoraBBS sources as a guide to create -the JAM libraries. The original JAMapi was not stable enough to do all the work -that needed to be done. -
-In Juli 1998 the first version of MBSE BBS was installed on the bbs I have, -on the second line. The first line was running McMail, GEcho and RA on a -Novell client while on the Linux box the mars_nwe emulator from Martin Stower -was running. In november 1998 mbcico was created from ifcico from Eugene M. -Crosser. In Januari 1999 it did also compile and run on a Sun Sparcstation 2 -system. -
-In April 1999 the motherboard of the Linux server died, I replaced it with -the MOBO of one of the client machines. From that day on, MBSE BBS became the -only bbs running on my system, because I was short on serial port boards at -that time. McMail and RA became history and MBSE BBS was on its own. From that -day on, updates were almost daily, all users and up and downlinks showed that -there were plenty of bugs to solve. One month later most problems were solved. -
-In juli 1999 Jan van de Werken started beta testing MBSE BBS on his system. -In September 1999 MBSE BBS was public released for the first time. -
- -
Is it Y2K ready?
--There have been no problems since 1 januari 2000 with MBSE BBS. I do run -pktdate by Tobias Ernst in the tosser, this solves problems with incoming -mail. Due to the internal date format, this program should run until 2038, -just as long as Unix/Linux and the internet will function without changing -the date format. -
- -
Future plans.
--Plans are to complete integrate news, email, www and chat into MBSE BBS. It -should work for browsers about the same as with ANSI character terminals. -
- - -
Go Back -
Running a BBS under Linux. + + + +++ + + diff --git a/html/invoking.html b/html/invoking.html index f6c5ac7f..2c74479c 100644 --- a/html/invoking.html +++ b/html/invoking.html @@ -1,70 +1,70 @@ - - - - - - - - -Last update 28-Jan-2001
+
+
Introduction to MBSE BBS.
++ +
Distribution.
++There are only five official distribution sites for the mbse bbs package. They are: +
+
+If you find mbse bbs on another site it may be out of date. I have no control over these sites. +New versions of mbse bbs are announced in the fidonet area LINUX_BBS. On the official fidonet +nodes you can request the latest version with the magic MBSEBBS. You will then get a zip file, +in this zip file is the original tar.gz file. This is to let systems who only support 8.3 +filenames to pickup the distribution package. You can also subscribe to the mailinglist +mbse-announce@lists.sourceforge.net to receive announcements. This will also work for fidonet +systems if you send your netmail via the official fido/internet gateway. You can also +subscribe online at sourceforge +- http://mbse.sourceforge.net Primary site +
- http://mbse.freezer-burn.org Mirror site +
- http://www.telematique.org/mbse Mirror site +
- fidonet node 2:280/2802 (+31-255-515973). +
- fidonet node 2:280/2801 (+31-255-533858). +
+ +
History.
++At the end of 1997 I was looking for several BBS systems that could run on +Linux and it must be capable to run Fidonet mail. After reviewing almost +all packages that were available at that time I found that there were no +packages that suited my needs. Some had the plain user interfaces that +my bbs users were used to but no Fidonet capabilities, others looked +awfull or were difficult to use by normal bbs users without Unix experience. +I also didn't want to run shareware anymore, one day you pay for some program, +and the next day support is over because the writer of that program decided +to stop development or simply dissapears from the Fidonet stage. With all +Y2K problems ahead the solution should be Open Software so that you have +the sources in case something goes wrong. +One package was very interesting and had the look and feel of RemoteAcces, +that package was RapidBBS. There was only one problem, it had no Fidonet +capabilities. I rewrote the data structures and created a deamon that should +control all bbs acivities. In march 1998 I started writing the mbfido program +that should handle all Fidonet mail and .tic files. In june 1998 the final +message base format became JAM using the LoraBBS sources as a guide to create +the JAM libraries. The original JAMapi was not stable enough to do all the work +that needed to be done. +
+In Juli 1998 the first version of MBSE BBS was installed on the bbs I have, +on the second line. The first line was running McMail, GEcho and RA on a +Novell client while on the Linux box the mars_nwe emulator from Martin Stower +was running. In november 1998 mbcico was created from ifcico from Eugene M. +Crosser. In Januari 1999 it did also compile and run on a Sun Sparcstation 2 +system. +
+In April 1999 the motherboard of the Linux server died, I replaced it with +the MOBO of one of the client machines. From that day on, MBSE BBS became the +only bbs running on my system, because I was short on serial port boards at +that time. McMail and RA became history and MBSE BBS was on its own. From that +day on, updates were almost daily, all users and up and downlinks showed that +there were plenty of bugs to solve. One month later most problems were solved. +
+In juli 1999 Jan van de Werken started beta testing MBSE BBS on his system. +In September 1999 MBSE BBS was public released for the first time. +
+ +
Is it Y2K ready?
++There have been no problems since 1 januari 2000 with MBSE BBS. I do run +pktdate by Tobias Ernst in the tosser, this solves problems with incoming +mail. Due to the internal date format, this program should run until 2038, +just as long as Unix/Linux and the internet will function without changing +the date format. +
+ +
Future plans.
++Plans are to complete integrate news, email, www and chat into MBSE BBS. It +should work for browsers about the same as with ANSI character terminals. +
+ + +
Go Back +
Starting and stopping the BBS. - - - --- - - + + + + + + + + +Last update 06-Jun-2001
-
- -
Starting and Stopping the BBS.
--Now it is time to check the starting and stopping of the BBS. As you have -installed everything, setup the BBS etc, you must check if the shutdown and -reboot work properly. As root type shutdown -r now and -watch the console. You should see messages that the BBS is closing while -the systems shuts down. This should be one of the first things to happen. -Because Slackware up to version 7.0.0 is tricky to automatic install the shutdown scripts, -you won't see this happen on older Slackware versions. If you want, you can edit -/etc/rc.d/rc.6 and /etc/rc.d/rc.K and insert the line /opt/mbse/etc/rc.shutdown -at the proper places.
- -When your system comes up again, one of the last messages before the login -prompt appears or just before X-windows starts, you should see messages that -the BBS is started.
- -Login as user mbse and check the logfiles if everything looks -good. If something is wrong, reread the previous documentation and check if -you did everything right.
- -Next logon to your BBS locally using the account "bbs". You will then create -the first user of your BBS, this will be you, the sysop of course. -After you logout the BBS start as user -mbse the program mbsetup and edit your user record -to set your level to that of the sysop. One more thing, the unix account you -must create when you logon as new BBS user may not be mbse -as this is the normal Admin account the BBS and its utilities use.
- -Now login with your unix account and see if everything still works. After all -this and if you have setup mgetty you may want to test if -users really can login with a modem. Also check a mailer session, can you -dialout, ie. poll other nodes and can they call you. There is a lot that can -go wrong with unix permissions if you are not precise in wat you are doing.
- -If everything is working it is time to create poll events, and adjust other -scripts to your local needs to get your BBS full up and running.
- -To do this you must install a crontab for user mbse As user -mbse go to the directory ~/mbsebbs-0.33.xx. -In that directory type -sh ./CRON.sh and a default crontab will be installed.
- -To add poll events, edit the crontab with the command crontab -e - At the bottom of that file there is an example of how to do that. -Now that the crontab is installed, all maintenance will now work, automatic -dialout, scanning and tossing mail etc. In other words, the bbs is up and -running. -
- -
Go Back -
Starting and stopping the BBS. + + + +++ + + diff --git a/html/known_bugs.html b/html/known_bugs.html index 56034619..de453187 100644 --- a/html/known_bugs.html +++ b/html/known_bugs.html @@ -1,37 +1,37 @@ - - - - - - - - -Last update 06-Jun-2001
+
+ +
Starting and Stopping the BBS.
++Now it is time to check the starting and stopping of the BBS. As you have +installed everything, setup the BBS etc, you must check if the shutdown and +reboot work properly. As root type shutdown -r now and +watch the console. You should see messages that the BBS is closing while +the systems shuts down. This should be one of the first things to happen. +Because Slackware up to version 7.0.0 is tricky to automatic install the shutdown scripts, +you won't see this happen on older Slackware versions. If you want, you can edit +/etc/rc.d/rc.6 and /etc/rc.d/rc.K and insert the line /opt/mbse/etc/rc.shutdown +at the proper places.
+ +When your system comes up again, one of the last messages before the login +prompt appears or just before X-windows starts, you should see messages that +the BBS is started.
+ +Login as user mbse and check the logfiles if everything looks +good. If something is wrong, reread the previous documentation and check if +you did everything right.
+ +Next logon to your BBS locally using the account "bbs". You will then create +the first user of your BBS, this will be you, the sysop of course. +After you logout the BBS start as user +mbse the program mbsetup and edit your user record +to set your level to that of the sysop. One more thing, the unix account you +must create when you logon as new BBS user may not be mbse +as this is the normal Admin account the BBS and its utilities use.
+ +Now login with your unix account and see if everything still works. After all +this and if you have setup mgetty you may want to test if +users really can login with a modem. Also check a mailer session, can you +dialout, ie. poll other nodes and can they call you. There is a lot that can +go wrong with unix permissions if you are not precise in wat you are doing.
+ +If everything is working it is time to create poll events, and adjust other +scripts to your local needs to get your BBS full up and running.
+ +To do this you must install a crontab for user mbse As user +mbse go to the directory ~/mbsebbs-0.33.xx. +In that directory type +sh ./CRON.sh and a default crontab will be installed.
+ +To add poll events, edit the crontab with the command crontab -e + At the bottom of that file there is an example of how to do that. +Now that the crontab is installed, all maintenance will now work, automatic +dialout, scanning and tossing mail etc. In other words, the bbs is up and +running. +
+ +
Go Back +
Running a BBS under Linux. - - - --Last update 28-Jan-2001
-
-
MBSE BBS - Known bugs.
-- -There are always more bugs, but these are known.... - -
-
- -- Reading of function keys in mbsebbs doesn't work always good, especially on -slow links and over PPP. - -
- Memory leaks in mbfido during mailtoss. - -
- Problems with D'Bridge [1a] mailers. - -
- Sometimes binkp sessions hang on sending files during bidirectional transfers. - -
- mbsetup crashes at several places if in system aka's the domain name is 12 characters long. -
Go Back - - - + + + + + + + + +
Running a BBS under Linux. + + + ++Last update 28-Jan-2001
+
+
MBSE BBS - Known bugs.
++ +There are always more bugs, but these are known.... + +
+
+ +- Reading of function keys in mbsebbs doesn't work always good, especially on +slow links and over PPP. + +
- Memory leaks in mbfido during mailtoss. + +
- Problems with D'Bridge [1a] mailers. + +
- Sometimes binkp sessions hang on sending files during bidirectional transfers. + +
- mbsetup crashes at several places if in system aka's the domain name is 12 characters long. +
Go Back + + + diff --git a/html/license/index.htm b/html/license/index.htm index eec8b7f2..d767ba44 100644 --- a/html/license/index.htm +++ b/html/license/index.htm @@ -1,39 +1,39 @@ - - - - - - - - -
Licenses. - - - --- - - + + + + + + + + +Last update 29-Jan-2001
-
- -
Licenses.
- -Introduction
--This is an overview of the licenses that are valid for the use of MBSE BBS or -parts of it. -
-Michiel Broek. -- -
License Documents.
- - - -Back to Index -
Licenses. + + + +++ + + diff --git a/html/menus/control.html b/html/menus/control.html index acc11d09..7db3196f 100644 --- a/html/menus/control.html +++ b/html/menus/control.html @@ -1,127 +1,127 @@ - - - - - - - - -Last update 29-Jan-2001
+
+ +
Licenses.
+ +Introduction
++This is an overview of the licenses that are valid for the use of MBSE BBS or +parts of it. +
+Michiel Broek. ++ +
License Documents.
+ + + +Back to Index +
MBSE BBS Menus - Control Codes in ANSI and ASCII files. - - - --- - - + + + + + + + + +Last update 27-Jun-2001
-
- -
MBSE BBS Control Codes in ANSI and ASCII files
-
- - -Single Control characters
-- Code Description - ---- --------------------------------------- - A Wait for a key - B Print text above sec. level - F Control-code F - K Control-code K - P Wait one second - U Control-code U - - --The control-B syntax is: ^B<seclevel>^B<The text to show>^B
-For example: ^B32000^BThis is the text^B
-- -
Control-F followed by:
-- Code Description - ---- --------------------------------------- - ! Display transfer protocol - A Number of uploads - B Number of downloads - C Downloads in Kilobytes - D Uploads in Kilobytes - E Download plus upload Kilobytes - F Download Kilobyte limit - G Last transfer time - H Current file area number - I Current file area description - J Download files limit - K Description of user limit - - --- -
Control-K followed by:
-- Code Description - ---- --------------------------------------- - A Print date in format DD-MM-YYYY - B Print time in HH:MM:SS - C Print date in DD-Mmm - D Print date in DD-Mmm-YYYY - E Print locked port baudrate - F Last caller - G Total users in userlist - H Number of system calls - I Current message area number - J Current message area description - K Print random oneliner - L Print number of messages in current area. - M Print users LastRead pointer of current message area. - N Print users current e-mail mailbox name. - O Print number of messages in current e-mail box. - P Print users LastRead pointer of current e-mail box. - - --- -
Control-U followed by:
-- Code Description - ---- --------------------------------------- - A User's full name - B User's location - C User's voice phone - D User's data phone - E User's last login date - F User's first login date - G User's last login time - H User's security level - I User's total calls - J User's time used today - K User's connect time this session - L User's time left today - M User's screen length - N User's first name - O User's last name - P User's graphics mode (On/Off) - Q User's news bulletins (On/Off) - R User's hot-keys (On/Off) - S User's daily time limit - T User's date of birth - U User's messages posted - X User's language - Y User's handle - Z User's do not disturb flag (On/Off) - 1 User's check for new mail (On/Off) - 2 User's check for new files (On/Off) - 3 User's fullscreen editor (On/Off); - - -- -
--Main Index -
-Menus Index -
MBSE BBS Menus - Control Codes in ANSI and ASCII files. + + + +++ + + diff --git a/html/menus/index.htm b/html/menus/index.htm index fa7b5fc3..8bb2d01b 100644 --- a/html/menus/index.htm +++ b/html/menus/index.htm @@ -1,166 +1,166 @@ - - - - - - - - -Last update 27-Jun-2001
+
+ +
MBSE BBS Control Codes in ANSI and ASCII files
+
+ + +Single Control characters
++ Code Description + ---- --------------------------------------- + A Wait for a key + B Print text above sec. level + F Control-code F + K Control-code K + P Wait one second + U Control-code U + + ++The control-B syntax is: ^B<seclevel>^B<The text to show>^B
+For example: ^B32000^BThis is the text^B
++ +
Control-F followed by:
++ Code Description + ---- --------------------------------------- + ! Display transfer protocol + A Number of uploads + B Number of downloads + C Downloads in Kilobytes + D Uploads in Kilobytes + E Download plus upload Kilobytes + F Download Kilobyte limit + G Last transfer time + H Current file area number + I Current file area description + J Download files limit + K Description of user limit + + +++ +
Control-K followed by:
++ Code Description + ---- --------------------------------------- + A Print date in format DD-MM-YYYY + B Print time in HH:MM:SS + C Print date in DD-Mmm + D Print date in DD-Mmm-YYYY + E Print locked port baudrate + F Last caller + G Total users in userlist + H Number of system calls + I Current message area number + J Current message area description + K Print random oneliner + L Print number of messages in current area. + M Print users LastRead pointer of current message area. + N Print users current e-mail mailbox name. + O Print number of messages in current e-mail box. + P Print users LastRead pointer of current e-mail box. + + +++ +
Control-U followed by:
++ Code Description + ---- --------------------------------------- + A User's full name + B User's location + C User's voice phone + D User's data phone + E User's last login date + F User's first login date + G User's last login time + H User's security level + I User's total calls + J User's time used today + K User's connect time this session + L User's time left today + M User's screen length + N User's first name + O User's last name + P User's graphics mode (On/Off) + Q User's news bulletins (On/Off) + R User's hot-keys (On/Off) + S User's daily time limit + T User's date of birth + U User's messages posted + X User's language + Y User's handle + Z User's do not disturb flag (On/Off) + 1 User's check for new mail (On/Off) + 2 User's check for new files (On/Off) + 3 User's fullscreen editor (On/Off); + + ++ +
++Main Index +
+Menus Index +
MBSE BBS Menu System. - - - --- - + + + + + + + + +Last update 27-Sep-2001
-
- -
MBSE BBS Menu System
-Menus sections: -Global menus -File areas -Message areas -User settings -Onliners -BBS lists -ANSI Control Codes -
--
- - -Introduction.
--One of the most powerfull features of the BBS is it's menu system. You -have complete control over each individual menu item which can be restricted -according to criteria such as security levels. -
- -
ANSI Screens.
--For the menus to work properly you can draw ANSI screens, this -is what the users will see. For Linux there is "Duh DRAW" written by Ben -Fowler, see sunsite.unc.edu /pub/Lunux/docs. -If you can't find it or have no internet access, you can also use -THEDRAW. This utility can be found on many BBS'es around the world. Unfortunatly -it is a DOS program so you will need dosemu on your Linux box or a seperate -DOS computer. You can define main screens and include screens for each -menu, the include screen may for example show the keys that you have available -in every menu. See the list of control codes. -
- -
Display lines.
--It is also possible to display menu lines with the buildin display option. -The used colors are selectable, a normal color and a bright color. -The normal color is the default, you can toggle bright on and of using -the ^ in the display line. If you end a menu display line with a ; then -no newline is send after that line. If you want to output teh ^ or ; characters -you need to escape them with a backslash like this: \; or \^. The order of menu -entries is important. -
- -
Automatic commands.
--A menu function is usually executed when a user presses the hot-key -assigned to that particular menu item. But menu functions can also be executed -automatically. Each menu item contains an AutoExec field. By default this -field is set to No, but by toggling it to Yes, the menu item can be made -to execute when it is played back (displayed) by the BBS.
--As you read through the menu function types outlined in this chapter, -you may come to realize that this is a very powerfull feature. For example, -when used with the menu function that displays a text file, you can design -very elaborate, graphical text file menus that you wouldn't normally be -able to display in a line-by-line menu.
--Automatic menu execution can be used in many other instances as well. -Just to give you some ideas, it might be used to display a text file to -users who have a security level equal to or greater than a certain level. -Yet another use is to execute multiple function menus which are used to -execute several functions when a single command is entered. -
- -
Multiple languages.
--For each language you can define a set of menus. Only for the default -language all menus must exist. It makes sense to make the filenames of -your menus for each language the same and not to translate them. If a menu -is missing for a non default language, the menu from the default language -path is used instead. -
- -
Editing a menu.
--The order of the menu lines in the setup is not important except for -the autoexec menus, they must be placed in the right order from start, -ie. begin with the menu specific screen display, then the global include -display and finally show the prompt. -
- -
-
-
-- Selection key. This is the key a user must press to activate -this menu. This field is ignored when AutoExec is set to Yes.
- -- Type nr. this is the menu type to execute. For a description -of all available types see below.
- -- Optional data. Some menus need optional data, for example the -function goto another menu needs the name of that menu file here.
- -- Display. What is to be displayed to the user. You can use this instead -of ANSI screens. -
- -- Security. This is the minimum security level to execute this -selection. The security is a level number combined with 32 bitmapped flags. -NOTE: level 0 and no flags means -everyone can select this menu. Good for logout options and all other options -everyone must be able to execute.
- -- Min. age. The minumum age the user must be to execute this selection. -You may want to restrict access to certain areas to users older than 18 -years. If you leave this to 0, every one can execute this menu.
- -- Max. lvl. The maximum level a user must have to execute this -menu. If you leave this at 0 then the maximum level has no effect.
- -- Password. You can protect the menu selection with a password. -If this field is empty, no password check is done.
- -- Credit. How much credit a user must have to execute this menu -selection. This field is not in use yet.
- -- Lo-colors. The normal display color for the display line. -
- -- Hi-colors. The bright display color for the display line.
- -- AutoExec. If this is an automatic executed selection.
- -- No door.sys Suppress writing of a door.sys file in the users -home directory. This item is only visible with menu type 7.
- -- Y2K style Writes the dates in the door.sys file in the new style, -with 4 digit year numbers, else the old 2 digit style is used. This item -is only visible with menu type 7.
- -- Use Comport Writes real comport to the door.sys file, this is -for dosemu with the vmodem patch. This item is only visible with menu -type 7.
- -
- -
Final warning.
--If a submenu is missing, the BBS falls back to the main menu. This menu -must be called "main" (or else set another name in the global -setup) or your BBS won't start and complain. Submenus may be nested 50 -levels deep. -
- -
Back -
MBSE BBS Menu System. + + + +++ + diff --git a/html/menus/menu0.html b/html/menus/menu0.html index 9aa84efc..9716fa4a 100644 --- a/html/menus/menu0.html +++ b/html/menus/menu0.html @@ -1,176 +1,182 @@ - - - - - - - - -Last update 22-Oct-2001
+
+ +
MBSE BBS Menu System
+Menus sections: +Global menus +File areas +Message areas +User settings +Onliners +BBS lists +ANSI Control Codes +
++
+ + +Introduction.
++One of the most powerfull features of the BBS is it's menu system. You +have complete control over each individual menu item which can be restricted +according to criteria such as security levels. +
+ +
ANSI Screens.
++For the menus to work properly you can draw ANSI screens, this +is what the users will see. For Linux there is "Duh DRAW" written by Ben +Fowler, see sunsite.unc.edu /pub/Lunux/docs. +If you can't find it or have no internet access, you can also use +THEDRAW. This utility can be found on many BBS'es around the world. Unfortunatly +it is a DOS program so you will need dosemu on your Linux box or a seperate +DOS computer. You can define main screens and include screens for each +menu, the include screen may for example show the keys that you have available +in every menu. See the list of control codes. +
+ +
Display lines.
++It is also possible to display menu lines with the buildin display option. +The used colors are selectable, a normal color and a bright color. +The normal color is the default, you can toggle bright on and of using +the ^ in the display line. If you end a menu display line with a ; then +no newline is send after that line. If you want to output teh ^ or ; characters +you need to escape them with a backslash like this: \; or \^. The order of menu +entries is important. +
+ +
Automatic commands.
++A menu function is usually executed when a user presses the hot-key +assigned to that particular menu item. But menu functions can also be executed +automatically. Each menu item contains an AutoExec field. By default this +field is set to No, but by toggling it to Yes, the menu item can be made +to execute when it is played back (displayed) by the BBS.
++As you read through the menu function types outlined in this chapter, +you may come to realize that this is a very powerfull feature. For example, +when used with the menu function that displays a text file, you can design +very elaborate, graphical text file menus that you wouldn't normally be +able to display in a line-by-line menu.
++Automatic menu execution can be used in many other instances as well. +Just to give you some ideas, it might be used to display a text file to +users who have a security level equal to or greater than a certain level. +Yet another use is to execute multiple function menus which are used to +execute several functions when a single command is entered. +
+ +
Multiple languages.
++For each language you can define a set of menus. Only for the default +language all menus must exist. It makes sense to make the filenames of +your menus for each language the same and not to translate them. If a menu +is missing for a non default language, the menu from the default language +path is used instead. +
+ +
Editing a menu.
++The order of the menu lines in the setup is not important except for +the autoexec menus, they must be placed in the right order from start, +ie. begin with the menu specific screen display, then the global include +display and finally show the prompt. +
+ +
+
+
+- Selection key. This is the key a user must press to activate +this menu. This field is ignored when AutoExec is set to Yes.
+ +- Type nr. this is the menu type to execute. For a description +of all available types see below.
+ +- Optional data. Some menus need optional data, for example the +function goto another menu needs the name of that menu file here.
+ +- Display. What is to be displayed to the user. You can use this instead +of ANSI screens. +
+ +- Security. This is the minimum security level to execute this +selection. The security is a level number combined with 32 bitmapped flags. +NOTE: level 0 and no flags means +everyone can select this menu. Good for logout options and all other options +everyone must be able to execute.
+ +- Min. age. The minumum age the user must be to execute this selection. +You may want to restrict access to certain areas to users older than 18 +years. If you leave this to 0, every one can execute this menu.
+ +- Max. lvl. The maximum level a user must have to execute this +menu. If you leave this at 0 then the maximum level has no effect.
+ +- Password. You can protect the menu selection with a password. +If this field is empty, no password check is done.
+ +- Credit. How much credit a user must have to execute this menu +selection. This field is not in use yet.
+ +- Lo-colors. The normal display color for the display line. +
+ +- Hi-colors. The bright display color for the display line.
+ +- AutoExec. If this is an automatic executed selection.
+ +- No door.sys Suppress writing of a door.sys file in the users +home directory. This item is only visible with menu type 7.
+ +- Y2K style Writes the dates in the door.sys file in the new style, +with 4 digit year numbers, else the old 2 digit style is used. This item +is only visible with menu type 7.
+ +- Use Comport Writes real comport to the door.sys file, this is +for dosemu with the vmodem patch. This item is only visible with menu +type 7.
+ +
+ +
Final warning.
++If a submenu is missing, the BBS falls back to the main menu. This menu +must be called "main" (or else set another name in the global +setup) or your BBS won't start and complain. Submenus may be nested 50 +levels deep. +
+ +
Back +
MBSE BBS Menus - Global Menus. - - - --- - - + + + + + + + + +Last update 26-Sep-2001
-
- -
MBSE BBS Global Menus
-
- -- -
- -- Goto another menu: This will start the execution - of another menu. The current menu level is not stored on the stack.
- Optional data: The name of the new menu.
-- -
- Gosub another menu: This will start the execution - of another menu. The current menu level is stored on the stack. Gosub's may - be nested 50 levels deep.
- Optional data: The name of the new menu.
-- -
- Return from Gosub: This will go back one - gosub level. If you are already at the top level nothing happens.
- Optional data: None.
-- -
- Return to top menu: Return to the top (main) - menu. The name of this menu is set in the global setup. - Default is main.mnu
- Optional data: None.
-- -
- Display .a?? file with controlcodes: This will - display an ANSI file to the user. If the user has Graphics No set - then the ASCII version is shown. Search is done first in the users language - path and if that fails the default language path is used. - Control codes in the - file are substituted with the current values the represent.
- Optional data: The name of the file to display. Do not - give the filename extension!
-- -
- Show menu prompt: Display the menu prompt.
- Optional data: The prompt to display. This string may - contain some control characters that are replaced with information. The - prompt is displayed in White on Black and is hardcoded at the moment. --
-- ~ This will insert the number of minutes the user - has left. -
- @ This will insert the name of the current file area. -
- ^ This will insert the name of the current message area. -
- # This will insert the current local time. -
- -
- Run external program: This will execute - external programs.
- Optional data: The full path and filename of the external - program. This can be a shell too. Look for a lot of programs, for example - if you want to give your users internet mail with elm, the user can get a - shell prompt by typing !/bin/sh. If you want this look for - anyway you might consider using a restricted shell.
-- -
- Show product information: This will show - copyright information about MBSE BBS.
- Optional data: None.
-- -
- Display todays callers: This will display a - list of todays callers to the BBS.
- Optional data: "/H" Show handles instead of real names.
-- -
- Display userlist: Display all users in the - users database except those that are hidden.
- Optional data: "/H" Show handles instead of real names.
-- -
- Time statistics: Display the users time - statistics.
- Optional data: None.
-- -
- Page Sysop: Page sysop for a chat.
- Optional data: A message to the user
- The message to the user could be something like "Calling sysop, please - wait ..." or "I will see if Michiel wants to chat with you, please wait!" - As sysop you will know best what to put in that line. -- -
- Terminate call: Terminale this call and - hangup.
- Optional data: None. -- -
- Make a log entry: This will write a line in - the logfile.
- Optional data: The information you want in the logfile.
-- -
- Print text to screen: Write text to the users - screen.
- Optional data: The text that must appear on the users - screen. The @ character is replaced with a newline.
-- -
- Who is online: Displays the who is online - list and what they are doing. Users that are hidden are not displayed.
- Optional data: "/H" Show handles instead of real names.
-- -
- Comment to sysop: Enter the texteditor and - let the user write a message to the sysop. The area is predefined in the - global setup.
- Optional data: None.
-- -
- Send online message: Send an online message - to a user on another line. - Optional data: "/H" Use handles instead of real names.
-- -
- Display textfile with more: This will display - a textfile to the user. After each full screen the user is prompted with - More Y/n/=.
- Optional data: The full path and filename to the file.
-- -
- Display .a?? file with control codes and wait: - This will display a ANSI or ASCII file to the user with - control codes and wait for Enter when it is finished.
- Optional data: The filename without extension of the - file to display.
-- -
- Display line This entry does nothing except - that it displays the text on the display line. This is always displayed, - even if the display line is empty. In that case an empty line is displayed.
- Optional data: None.
-- -
- Nextuser door: This runs the message to next - user door.
- Optional data: None.
-- -
- Timebank door: This runs the time bank door.
- Optional data: None.
-- -
- Safe cracker door: This runs the Safe Cracker - door.
- Optional data: None.
-
-- Main Index -
- Menus Index -
MBSE BBS Menus - Global Menus. + + + +++ + + diff --git a/html/menus/menu100.html b/html/menus/menu100.html index 95e18066..9f63e2d2 100644 --- a/html/menus/menu100.html +++ b/html/menus/menu100.html @@ -1,147 +1,147 @@ - - - - - - - - -Last update 22-Oct-2001
+
+ +
MBSE BBS Global Menus
+
+ ++ +
+ +- Goto another menu: This will start the execution + of another menu. The current menu level is not stored on the stack.
+ Optional data: The name of the new menu.
++ +
- Gosub another menu: This will start the execution + of another menu. The current menu level is stored on the stack. Gosub's may + be nested 50 levels deep.
+ Optional data: The name of the new menu.
++ +
- Return from Gosub: This will go back one + gosub level. If you are already at the top level nothing happens.
+ Optional data: None.
++ +
- Return to top menu: Return to the top (main) + menu. The name of this menu is set in the global setup. + Default is main.mnu
+ Optional data: None.
++ +
- Display .a?? file with controlcodes: This will + display an ANSI file to the user. If the user has Graphics No set + then the ASCII version is shown. Search is done first in the users language + path and if that fails the default language path is used. + Control codes in the + file are substituted with the current values the represent.
+ Optional data: The name of the file to display. Do not + give the filename extension!
++ +
- Show menu prompt: Display the menu prompt.
+ Optional data: The prompt to display. This string may + contain some control characters that are replaced with information. The + prompt is displayed in White on Black and is hardcoded at the moment. ++
+- ~ This will insert the number of minutes the user + has left. +
- @ This will insert the name of the current file area. +
- ^ This will insert the name of the current message area. +
- # This will insert the current local time. +
+ +
- Run external program: This will execute + external programs.
+ Optional data: The full path and filename of the external + program to run. There are a few switches you can give on the commandline: ++
+- /N will be replaced by the current nodenumber. The nodenumber is + faked by using the record number of the tty lines setup. +
- /A will prompt for a filename to enter. The filename the user + enters is then replaced on the commandline. This is a dangerous option! +
- /T=your prompt is an alternate prompt for entering a filename + if used together with the /A option. +
++ +
- Show product information: This will show + copyright information about MBSE BBS.
+ Optional data: None.
++ +
- Display todays callers: This will display a + list of todays callers to the BBS.
+ Optional data: "/H" Show handles instead of real names.
++ +
- Display userlist: Display all users in the + users database except those that are hidden.
+ Optional data: "/H" Show handles instead of real names.
++ +
- Time statistics: Display the users time + statistics.
+ Optional data: None.
++ +
- Page Sysop: Page sysop for a chat.
+ Optional data: A message to the user
+ The message to the user could be something like "Calling sysop, please + wait ..." or "I will see if Michiel wants to chat with you, please wait!" + As sysop you will know best what to put in that line. ++ +
- Terminate call: Terminale this call and + hangup.
+ Optional data: None. ++ +
- Make a log entry: This will write a line in + the logfile.
+ Optional data: The information you want in the logfile.
++ +
- Print text to screen: Write text to the users + screen.
+ Optional data: The text that must appear on the users + screen. The @ character is replaced with a newline.
++ +
- Who is online: Displays the who is online + list and what they are doing. Users that are hidden are not displayed.
+ Optional data: "/H" Show handles instead of real names.
++ +
- Comment to sysop: Enter the texteditor and + let the user write a message to the sysop. The area is predefined in the + global setup.
+ Optional data: None.
++ +
- Send online message: Send an online message + to a user on another line. + Optional data: "/H" Use handles instead of real names.
++ +
- Display textfile with more: This will display + a textfile to the user. After each full screen the user is prompted with + More Y/n/=.
+ Optional data: The full path and filename to the file.
++ +
- Display .a?? file with control codes and wait: + This will display a ANSI or ASCII file to the user with + control codes and wait for Enter when it is finished.
+ Optional data: The filename without extension of the + file to display.
++ +
- Display line This entry does nothing except + that it displays the text on the display line. This is always displayed, + even if the display line is empty. In that case an empty line is displayed.
+ Optional data: None.
++ +
- Nextuser door: This runs the message to next + user door.
+ Optional data: None.
++ +
- Timebank door: This runs the time bank door.
+ Optional data: None.
++ +
- Safe cracker door: This runs the Safe Cracker + door.
+ Optional data: None.
+
++ Main Index +
+ Menus Index +
MBSE BBS Menus - File Area Menus. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
MBSE BBS File Area Menus
-
- -- -
- -- Select another area: This option will show - a list of available areas and let the user select a new area. If there is - optional data the new area will be selected without user intervention.
- Optional data: If there is an option the area is direct - selected. Current options are: F+ goto next available area. - F- goto previous available area.
-- -
- File List: This option will display a list - of files with their dates, sizes and description. During the display of the - list the user can select (Tag) files for later download.
- Optional data: None.
-- -
- View File: Not yet implemented.
- Optional data: None.
-- -
- Download File(s): This option will start to - transmit files to the user if he has tagged files for download. Tagging files - for download can be done during File List, Keyword Scan, Filename Scan or - Newfile Scan. If a user didn't select a transfer protocol before now he will be - forced to select a file transfer protocol.
- Optional Data: None.
-- -
- Raw Directory: This option will display the - contents of a directory in raw format.
- Optional data: If the option is /F the - contents of the current directory is shown. If the option is the full path - to a directory, the contents of that directory is shown.
-- -
- Keyword Scan: This option will search for - files in the files database for a matching keyword. The search is not case - sensitive. If there are files found the user is able to select (Tag) these - files for later download.
- Optional data: None.
-- -
- Filename Scan: This option will search for - a filename match in the files database. The search is not case sensitive. - If there are files found the user is able to select (Tag) these files for - later download.
- Optional data: None.
-- -
- Newfiles Scan: This option will scan for new - files available for download since the last time the user was online. As - option the user can change that date from which to start the search. Any files - found the user may select (Tag) for later download.
- Optional data: None.
-- -
- Upload: This option will let the user upload - files to the bbs. If the current area has an alternate upload area, the upload - will end up in that area. If the user uses X-modem or another ancient protocol - he will first be asked for a filename. Normal modern protocols don't need this. - The filename is checked before the transfer is done to protect the bbs. Further - the files the user will upload will at first be placed under the users home - directory ~/upl. After the upload(s) the files are checked - for virusses. If all is well, the file is imported in the bbs. If the file - contains a valid FILE_ID.DIZ file inside the archive, that file will be used - for the description of the upload, if not, the uploader will have to describe - the file.
- Optional data: None.
-- -
- Edit Taglist: This option is for the user to - edit the list of files he has tagged for later download.
- Optional data: None.
-- -
- View file in homedir: Not yet implemented.
- Optional data: None.
-- -
- Download Direct: Download a file direct.
- Optional data: The full path and filename to the file to - download.
-- -
- Copy file to Homedir: This option will copy - a file from a download directory to the users home directory. It will be - checked if the user has enough room in his directory, the default Quota for - users is 10 MBytes.
- Optional data: None.
-- -
- List Homedir: This option will list the files - in the users home directory.
- Optional data: None.
-- -
- Delete in Homedir: This option will let the - user delete one or more files from his home directory.
- Optional data: None.
-- -
- Unpack file in Homedir: Not yet implemented.
- Optional data: None.
-- -
- Pack files in Homedir: Not yet implemented.
- Optional data: None.
-- -
- Download Homedir: This option will let the - user download from his home directory.
- Optional data: None.
-- -
- Upload Homedir: This option will let the user - upload files to his home directory.
- Optional data: None.
-
--Main Index -
-Menus Index -
MBSE BBS Menus - File Area Menus. + + + +++ + + diff --git a/html/menus/menu200.html b/html/menus/menu200.html index ba4ca392..e8515960 100644 --- a/html/menus/menu200.html +++ b/html/menus/menu200.html @@ -1,138 +1,138 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
MBSE BBS File Area Menus
+
+ ++ +
+ +- Select another area: This option will show + a list of available areas and let the user select a new area. If there is + optional data the new area will be selected without user intervention.
+ Optional data: If there is an option the area is direct + selected. Current options are: F+ goto next available area. + F- goto previous available area.
++ +
- File List: This option will display a list + of files with their dates, sizes and description. During the display of the + list the user can select (Tag) files for later download.
+ Optional data: None.
++ +
- View File: Not yet implemented.
+ Optional data: None.
++ +
- Download File(s): This option will start to + transmit files to the user if he has tagged files for download. Tagging files + for download can be done during File List, Keyword Scan, Filename Scan or + Newfile Scan. If a user didn't select a transfer protocol before now he will be + forced to select a file transfer protocol.
+ Optional Data: None.
++ +
- Raw Directory: This option will display the + contents of a directory in raw format.
+ Optional data: If the option is /F the + contents of the current directory is shown. If the option is the full path + to a directory, the contents of that directory is shown.
++ +
- Keyword Scan: This option will search for + files in the files database for a matching keyword. The search is not case + sensitive. If there are files found the user is able to select (Tag) these + files for later download.
+ Optional data: None.
++ +
- Filename Scan: This option will search for + a filename match in the files database. The search is not case sensitive. + If there are files found the user is able to select (Tag) these files for + later download.
+ Optional data: None.
++ +
- Newfiles Scan: This option will scan for new + files available for download since the last time the user was online. As + option the user can change that date from which to start the search. Any files + found the user may select (Tag) for later download.
+ Optional data: None.
++ +
- Upload: This option will let the user upload + files to the bbs. If the current area has an alternate upload area, the upload + will end up in that area. If the user uses X-modem or another ancient protocol + he will first be asked for a filename. Normal modern protocols don't need this. + The filename is checked before the transfer is done to protect the bbs. Further + the files the user will upload will at first be placed under the users home + directory ~/upl. After the upload(s) the files are checked + for virusses. If all is well, the file is imported in the bbs. If the file + contains a valid FILE_ID.DIZ file inside the archive, that file will be used + for the description of the upload, if not, the uploader will have to describe + the file.
+ Optional data: None.
++ +
- Edit Taglist: This option is for the user to + edit the list of files he has tagged for later download.
+ Optional data: None.
++ +
- View file in homedir: Not yet implemented.
+ Optional data: None.
++ +
- Download Direct: Download a file direct.
+ Optional data: The full path and filename to the file to + download.
++ +
- Copy file to Homedir: This option will copy + a file from a download directory to the users home directory. It will be + checked if the user has enough room in his directory, the default Quota for + users is 10 MBytes.
+ Optional data: None.
++ +
- List Homedir: This option will list the files + in the users home directory.
+ Optional data: None.
++ +
- Delete in Homedir: This option will let the + user delete one or more files from his home directory.
+ Optional data: None.
++ +
- Unpack file in Homedir: Not yet implemented.
+ Optional data: None.
++ +
- Pack files in Homedir: Not yet implemented.
+ Optional data: None.
++ +
- Download Homedir: This option will let the + user download from his home directory.
+ Optional data: None.
++ +
- Upload Homedir: This option will let the user + upload files to his home directory.
+ Optional data: None.
+
++Main Index +
+Menus Index +
MBSE BBS Menus - Message Area Menus. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
MBSE BBS Message Area Menus
-
- -- -
- -- Select another area: This option will show - a list of all available areas and let the user select a new area. If there - is optional data the area will be selected without user intervention.
- Optional data: If there is an option the area is direct - selected. Current options are M+ goto the next available - area. M- goto the previous available area.
-- -
- Post a Message: This option lets the user - post a new message.
- Optional data: None.
-- -
- Read Messages: This option lets the user - read messages. If he has done that before in that area he will be suggested - to start after the message he has last read. During reading of messages - the user can reply to other messages.
- Optional data: None.
-- -
- Check for Mail: Check for new arrived mail.
- Optional data: None.
-- -
- Quickscan Messages: Make a quick overview - list of all messages in that area.
- Optional data: None.
-- -
- Delete a Message: This option will let the - user delete a specific message. He must the the owner or recipient of that - message or have sysop rights in that area to be able to delete a message.
- Optional data: None.
-- -
- Mail Status: This gives a complete overview - of all available mail at the bbs.
- Optional data: None.
-- -
- OLR: Tag Area: This option lets - the user tag one or more areas to be included in his offline mail packet.
- Optional data: None.
-- -
- OLR: Untag Area: This option lets - the user untag one or more areas not to be included in his offline mail - packet.
- Optional data: None.
-- -
- OLR: View Tags: This option lets - the user view which areas will be included in his offline mail packet.
- Optional data: None.
-- -
- OLR: Restrict Date: Not yet - implemented.
- Optional data: None.
-- -
- OLR: Upload Mail: Let the user upload - mail or a new offline reader setup. The packet format is automatic detected. - Currently BlueWave is supported. QWK support will be added later.
- Optional data: None.
-- -
- OLR: Download BlueWave: Download mail in - BlueWave version 2 format.
- Optional data: None.
-- -
- OLR: Download QWK: Download mail in QWK - format.
- Optional data: None.
-- -
- OLR: Download ASCII: Download mail in flat - ASCII format. Not yet implemented.
- Optional data: None.
-- -
- Read Email Read users private email.
- Optional data: None.
-- -
- Write Email Post an email message.
- Optional data: None.
-- -
- Trash Email Put email in the trashcan. - Not Yet implemented.
- Optional data: None.
-- -
- Choose Mailbox Choose another private - mailbox. Valid boxes are: mailbox (normal in/out), archive and trash.
- Optional data: If there is an option the area is direct - selected. Current options are M+ goto the next mailbox. - M- goto the previous mailbox.
-- -
- Quickscan Email Make a quick overview - list of all messages in the selected e-mail area.
- Optional data: None.
--
--Main Index -
-Menus Index -
MBSE BBS Menus - Message Area Menus. + + + +++ + + diff --git a/html/menus/menu300.html b/html/menus/menu300.html index 3fd35ae1..2f2f9335 100644 --- a/html/menus/menu300.html +++ b/html/menus/menu300.html @@ -1,99 +1,99 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
MBSE BBS Message Area Menus
+
+ ++ +
+ +- Select another area: This option will show + a list of all available areas and let the user select a new area. If there + is optional data the area will be selected without user intervention.
+ Optional data: If there is an option the area is direct + selected. Current options are M+ goto the next available + area. M- goto the previous available area.
++ +
- Post a Message: This option lets the user + post a new message.
+ Optional data: None.
++ +
- Read Messages: This option lets the user + read messages. If he has done that before in that area he will be suggested + to start after the message he has last read. During reading of messages + the user can reply to other messages.
+ Optional data: None.
++ +
- Check for Mail: Check for new arrived mail.
+ Optional data: None.
++ +
- Quickscan Messages: Make a quick overview + list of all messages in that area.
+ Optional data: None.
++ +
- Delete a Message: This option will let the + user delete a specific message. He must the the owner or recipient of that + message or have sysop rights in that area to be able to delete a message.
+ Optional data: None.
++ +
- Mail Status: This gives a complete overview + of all available mail at the bbs.
+ Optional data: None.
++ +
- OLR: Tag Area: This option lets + the user tag one or more areas to be included in his offline mail packet.
+ Optional data: None.
++ +
- OLR: Untag Area: This option lets + the user untag one or more areas not to be included in his offline mail + packet.
+ Optional data: None.
++ +
- OLR: View Tags: This option lets + the user view which areas will be included in his offline mail packet.
+ Optional data: None.
++ +
- OLR: Restrict Date: Not yet + implemented.
+ Optional data: None.
++ +
- OLR: Upload Mail: Let the user upload + mail or a new offline reader setup. The packet format is automatic detected. + Currently BlueWave is supported. QWK support will be added later.
+ Optional data: None.
++ +
- OLR: Download BlueWave: Download mail in + BlueWave version 2 format.
+ Optional data: None.
++ +
- OLR: Download QWK: Download mail in QWK + format.
+ Optional data: None.
++ +
- OLR: Download ASCII: Download mail in flat + ASCII format. Not yet implemented.
+ Optional data: None.
++ +
- Read Email Read users private email.
+ Optional data: None.
++ +
- Write Email Post an email message.
+ Optional data: None.
++ +
- Trash Email Put email in the trashcan. + Not Yet implemented.
+ Optional data: None.
++ +
- Choose Mailbox Choose another private + mailbox. Valid boxes are: mailbox (normal in/out), archive and trash.
+ Optional data: If there is an option the area is direct + selected. Current options are M+ goto the next mailbox. + M- goto the previous mailbox.
++ +
- Quickscan Email Make a quick overview + list of all messages in the selected e-mail area.
+ Optional data: None.
++
++Main Index +
+Menus Index +
MBSE BBS Menus - User Settings Menus. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
MBSE BBS User Settings Menus
-
- -- -
- -- Change Transfer Protocol: Let the user - select a new file transfer protocol.
- Optional data: None.
-- -
- Change Password: Let the user change - his FidoNet password.
- Optional data: None.
-- -
- Change Location: Let the user change - his location.
- Optional data: None.
-- -
- Change Graphics: Let the user toggle - graphics mode on or off.
- Optional data: None.
-- -
- Change Voicephone: Let the user change - his voice phonenumber.
- Optional data: None.
-- -
- Change Dataphone: Let the user change - his data phonenumber.
- Optional data: None.
-- -
- Change Expertmode: This command will be - removed.
- Optional data: None.
-- -
- Change Scrennlength: This command will - let the user set a new screenlength, the default is 24.
- Optional data: None.
-- -
- Change Date of Birth: Let the user set a - new date of birth. Check's are done if the date is more or less realistic. - This command should not be made available users if you use the regular - date of birth validation check.
- Optional data: None.
-- -
- Change Language: Let the user select a new - default language.
- Optional data: None.
-- -
- Change Hotkeys: Let the user toggle the - use of Hotkeys on or off..
- Optional data: None.
-- -
- Change Handle: Let the user select a new - handle (nickname).
- Optional data: None.
-- -
- Change Don't Disturb: Let the user toggle - the "do not disturb" flag.
- Optional data: None.
-- -
--Main Index -
-Menus Index -
MBSE BBS Menus - User Settings Menus. + + + +++ + + diff --git a/html/menus/menu400.html b/html/menus/menu400.html index 68b341a9..0854a008 100644 --- a/html/menus/menu400.html +++ b/html/menus/menu400.html @@ -1,60 +1,60 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
MBSE BBS User Settings Menus
+
+ ++ +
+ +- Change Transfer Protocol: Let the user + select a new file transfer protocol.
+ Optional data: None.
++ +
- Change Password: Let the user change + his FidoNet password.
+ Optional data: None.
++ +
- Change Location: Let the user change + his location.
+ Optional data: None.
++ +
- Change Graphics: Let the user toggle + graphics mode on or off.
+ Optional data: None.
++ +
- Change Voicephone: Let the user change + his voice phonenumber.
+ Optional data: None.
++ +
- Change Dataphone: Let the user change + his data phonenumber.
+ Optional data: None.
++ +
- Change Expertmode: This command will be + removed.
+ Optional data: None.
++ +
- Change Scrennlength: This command will + let the user set a new screenlength, the default is 24.
+ Optional data: None.
++ +
- Change Date of Birth: Let the user set a + new date of birth. Check's are done if the date is more or less realistic. + This command should not be made available users if you use the regular + date of birth validation check.
+ Optional data: None.
++ +
- Change Language: Let the user select a new + default language.
+ Optional data: None.
++ +
- Change Hotkeys: Let the user toggle the + use of Hotkeys on or off..
+ Optional data: None.
++ +
- Change Handle: Let the user select a new + handle (nickname).
+ Optional data: None.
++ +
- Change Don't Disturb: Let the user toggle + the "do not disturb" flag.
+ Optional data: None.
++ +
++Main Index +
+Menus Index +
MBSE BBS Menus - Oneliner Menus. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
MBSE BBS Oneliner Menus
-
- -- -
- -- Oneliner Add: Let the user add a new - oneliner.
- Optional data: None.
-- -
- Oneliner List: Let the user list all the - available oneliners.
- Optional data: None.
-- -
- Oneliner Show: Let the user show a - specific oneliner.
- Optional data: None.
-- -
- Oneliner Delete: Let the user delete a - oneliner. In order to do so he must be the owner of that oneliner or - he must have sysop access level. The oneliner is not really removed, only - marked for deletion.
- Optional data: None.
-- -
- Oneliner Print: Show a random chosen - oneliner on the screen. If you make this command automatic, each time that - this menu is executed a new oneliner will popup.
- Optional data: None.
-- -
--Main Index -
-Menus Index -
MBSE BBS Menus - Oneliner Menus. + + + +++ + + diff --git a/html/menus/menu500.html b/html/menus/menu500.html index bc2972b9..3db58ecf 100644 --- a/html/menus/menu500.html +++ b/html/menus/menu500.html @@ -1,56 +1,56 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
MBSE BBS Oneliner Menus
+
+ ++ +
+ +- Oneliner Add: Let the user add a new + oneliner.
+ Optional data: None.
++ +
- Oneliner List: Let the user list all the + available oneliners.
+ Optional data: None.
++ +
- Oneliner Show: Let the user show a + specific oneliner.
+ Optional data: None.
++ +
- Oneliner Delete: Let the user delete a + oneliner. In order to do so he must be the owner of that oneliner or + he must have sysop access level. The oneliner is not really removed, only + marked for deletion.
+ Optional data: None.
++ +
- Oneliner Print: Show a random chosen + oneliner on the screen. If you make this command automatic, each time that + this menu is executed a new oneliner will popup.
+ Optional data: None.
++ +
++Main Index +
+Menus Index +
MBSE BBS Menus - BBS List Menus. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
MBSE BBS BBS List Menus
-
- -- -
- -- Add a BBS: Let the user add a BBS to the - BBS advertising database.
- Optional data: None.
-- -
- List BBS'es: Show a list of BBS'es in the - BBS database.
- Optional data: None.
-- -
- Show BBS: Show a specific BBS.
- Optional data: None.
-- -
- Delete BBS: Delete a specific BBS. The BBS - must have been entered by the user or the user must have sysop rights to - be able to delete a BBS.
- Optional data: None.
-- -
- Search BBS: Search for a specific BBS.
- Optional data: None.
-- -
--Main Index -
-Menus Index -
MBSE BBS Menus - BBS List Menus. + + + +++ + + diff --git a/html/mgetty.html b/html/mgetty.html index 0b7e6c23..a3ce2e20 100644 --- a/html/mgetty.html +++ b/html/mgetty.html @@ -1,172 +1,172 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
MBSE BBS BBS List Menus
+
+ ++ +
+ +- Add a BBS: Let the user add a BBS to the + BBS advertising database.
+ Optional data: None.
++ +
- List BBS'es: Show a list of BBS'es in the + BBS database.
+ Optional data: None.
++ +
- Show BBS: Show a specific BBS.
+ Optional data: None.
++ +
- Delete BBS: Delete a specific BBS. The BBS + must have been entered by the user or the user must have sysop rights to + be able to delete a BBS.
+ Optional data: None.
++ +
- Search BBS: Search for a specific BBS.
+ Optional data: None.
++ +
++Main Index +
+Menus Index +
Setup mgetty for MBSE BBS. - - - --- - - + + + + + + + + +Last update 29-Jan-2001
-
- -
Setup mgetty for MBSE BBS
--To handle incoming calls you can use mgetty written by -Gert Doering, (gert@greenie.muc.de). Others may work. You have to compile -mgetty with the -DFIDO flag to accept Fidonet mailer calls. -If you want incoming PPP calls as well, add the -DAUTO_PPP as well. Below -you can see the mgetty.config and login.config for mgetty that I use. I -have also included a part of my /etc/inittab to show how mgetty - will spawn from init. -
- -
--# inittab This is only a part of my /etc/inittab! -# In this example it runs in runlevel 3 and 4. -# -# Serial lines -s1:34:respawn:/usr/local/sbin/mgetty -i /opt/mbse/etc/issue ttyS0 -# -# End of /etc/inittab --
--# mgetty configuration file: mgetty.config -# -# ----- global section ----- -# -# In this section, you put the global defaults, per-port stuff is below -# -# set the global debug level to "4" (default from policy.h) -debug 4 -# -# set the local fax station id -fax-id ++31-255-515973 -# -# access the modem(s) with 38400 bps -speed 38400 -# -# use these options to make the /dev/tty-device owned by "uucp.uucp" -# and mode "rw-rw-r--" (0664). *LEADING ZERO NEEDED!* -port-owner uucp -port-group uucp -port-mode 0664 -# -# use these options to make incoming faxes owned by "root.uucp" -# and mode "rw-r-----" (0640). *LEADING ZERO NEEDED!* -fax-owner root -fax-group uucp -fax-mode 0640 -# -# -# ----- port specific section ----- -# -# Here you can put things that are valid only for one line, not the others -# -# Dynalink 1428EXTRA faxmodem at port 0 (COM1). -# -port ttyS0 -speed 57600 -switchbd 19200 -modem-type cls2 -init-chat "" \d\dAT&F&C1&D3X4W2B0M0Q0V1H0&K3S0=0 OK -# -# end of mgetty.config --
--# login.config -# -# This is a sample "login dispatcher" configuration file for mgetty -# -# Format: -# username userid utmp_entry login_program [arguments] -# -# Meaning: -# for a "username" entered at mgettys login: prompt, call -# "login_program" with [arguments], with the uid set to "userid", -# and a USER_PROCESS utmp entry with ut_user = "utmp_entry" -# -# -# Use this one for fido calls (login name /FIDO/ is handled specially) -# -# mgetty has to be compiled with "-DFIDO", otherwise a fido call won't -# be detected. -# -/FIDO/ mbse fido /opt/mbse/bin/mbcico @ -# -# -# Automatic PPP startup on receipt of LCP configure request (AutoPPP). -# mgetty has to be compiled with "-DAUTO_PPP" for this to work. -# Warning: Case is significant, AUTOPPP or autoppp won't work! -# Consult the "pppd" man page to find pppd options that work for you. -# See also PPP-HOWTO on how to set this up. -# -/AutoPPP/ - a_ppp /etc/ppp/paplogin -# -# This is the "standard" behaviour - *dont* set a userid or utmp -# entry here, otherwise /bin/login will fail! -# This entry isn't really necessary: if it's missing, the built-in -# default will do exactly this. -# -* - - /bin/login @ -# -# You might use this instead, it will directly start the BBS when the call -# is not a PPP call and not a Fidonet mailer. Use only one of these two! -# THIS IS NOT YET TESTED! -# -* - - /opt/mbse/bin/mbsebbs -# -# end of login.config --
- --If you use /bin/login the users can get confused by the Unix login prompt. -Most of them are used to DOS based bbs systems and will try to login with -two names which won't work of course. For this reason I have added the --i /opt/mbse/etc/issue options to the mgetty -line in /etc/inittab. The file /opt/mbse/etc/issue is a plain textfile -explaining users how to login to start the bbs. It could look like this:
-- - .--. Welcome at MBSE BBS Development. - |o_o | -------------------------------- - |:_/ | - // \ \ This may or may not work today... - (| | ) - /'\_ _/`\ - \___)=(___/ -Powered by Linux. - -To start the bbs login with "bbs" without quotes. -Voor het bbs login met "bbs" zonder aanhalingstekens. --There is a default /opt/mbse/etc/issue installed by the installation script. -You need to edit this to insert your bbs name in it or even completely replace -this file for a nicer one. Don't make it too big, don't put control characters -in it as this may prevent some mailers to connect to your system. --I discovered that some systems don't have the right permissions on the serial -port for MBSE BBS. To fix this type the following commands: -
-su -password: enter root password here -chmod 666 /dev/ttyS0 -chown uucp.uucp /dev/ttyS0 -exit --Note that /dev/ttyS0 is for COM1, /dev/ttyS1 for COM2 etc. -- -
Go Back -
Setup mgetty for MBSE BBS. + + + +++ + + diff --git a/html/misc/dropfile.html b/html/misc/dropfile.html index f4e86ebc..1cb819f1 100644 --- a/html/misc/dropfile.html +++ b/html/misc/dropfile.html @@ -1,117 +1,117 @@ - - - - - - - - -Last update 29-Jan-2001
+
+ +
Setup mgetty for MBSE BBS
++To handle incoming calls you can use mgetty written by +Gert Doering, (gert@greenie.muc.de). Others may work. You have to compile +mgetty with the -DFIDO flag to accept Fidonet mailer calls. +If you want incoming PPP calls as well, add the -DAUTO_PPP as well. Below +you can see the mgetty.config and login.config for mgetty that I use. I +have also included a part of my /etc/inittab to show how mgetty + will spawn from init. +
+ +
++# inittab This is only a part of my /etc/inittab! +# In this example it runs in runlevel 3 and 4. +# +# Serial lines +s1:34:respawn:/usr/local/sbin/mgetty -i /opt/mbse/etc/issue ttyS0 +# +# End of /etc/inittab ++
++# mgetty configuration file: mgetty.config +# +# ----- global section ----- +# +# In this section, you put the global defaults, per-port stuff is below +# +# set the global debug level to "4" (default from policy.h) +debug 4 +# +# set the local fax station id +fax-id ++31-255-515973 +# +# access the modem(s) with 38400 bps +speed 38400 +# +# use these options to make the /dev/tty-device owned by "uucp.uucp" +# and mode "rw-rw-r--" (0664). *LEADING ZERO NEEDED!* +port-owner uucp +port-group uucp +port-mode 0664 +# +# use these options to make incoming faxes owned by "root.uucp" +# and mode "rw-r-----" (0640). *LEADING ZERO NEEDED!* +fax-owner root +fax-group uucp +fax-mode 0640 +# +# +# ----- port specific section ----- +# +# Here you can put things that are valid only for one line, not the others +# +# Dynalink 1428EXTRA faxmodem at port 0 (COM1). +# +port ttyS0 +speed 57600 +switchbd 19200 +modem-type cls2 +init-chat "" \d\dAT&F&C1&D3X4W2B0M0Q0V1H0&K3S0=0 OK +# +# end of mgetty.config ++
++# login.config +# +# This is a sample "login dispatcher" configuration file for mgetty +# +# Format: +# username userid utmp_entry login_program [arguments] +# +# Meaning: +# for a "username" entered at mgettys login: prompt, call +# "login_program" with [arguments], with the uid set to "userid", +# and a USER_PROCESS utmp entry with ut_user = "utmp_entry" +# +# +# Use this one for fido calls (login name /FIDO/ is handled specially) +# +# mgetty has to be compiled with "-DFIDO", otherwise a fido call won't +# be detected. +# +/FIDO/ mbse fido /opt/mbse/bin/mbcico @ +# +# +# Automatic PPP startup on receipt of LCP configure request (AutoPPP). +# mgetty has to be compiled with "-DAUTO_PPP" for this to work. +# Warning: Case is significant, AUTOPPP or autoppp won't work! +# Consult the "pppd" man page to find pppd options that work for you. +# See also PPP-HOWTO on how to set this up. +# +/AutoPPP/ - a_ppp /etc/ppp/paplogin +# +# This is the "standard" behaviour - *dont* set a userid or utmp +# entry here, otherwise /bin/login will fail! +# This entry isn't really necessary: if it's missing, the built-in +# default will do exactly this. +# +* - - /bin/login @ +# +# You might use this instead, it will directly start the BBS when the call +# is not a PPP call and not a Fidonet mailer. Use only one of these two! +# THIS IS NOT YET TESTED! +# +* - - /opt/mbse/bin/mbsebbs +# +# end of login.config ++
+ ++If you use /bin/login the users can get confused by the Unix login prompt. +Most of them are used to DOS based bbs systems and will try to login with +two names which won't work of course. For this reason I have added the +-i /opt/mbse/etc/issue options to the mgetty +line in /etc/inittab. The file /opt/mbse/etc/issue is a plain textfile +explaining users how to login to start the bbs. It could look like this:
++ + .--. Welcome at MBSE BBS Development. + |o_o | -------------------------------- + |:_/ | + // \ \ This may or may not work today... + (| | ) + /'\_ _/`\ + \___)=(___/ +Powered by Linux. + +To start the bbs login with "bbs" without quotes. +Voor het bbs login met "bbs" zonder aanhalingstekens. ++There is a default /opt/mbse/etc/issue installed by the installation script. +You need to edit this to insert your bbs name in it or even completely replace +this file for a nicer one. Don't make it too big, don't put control characters +in it as this may prevent some mailers to connect to your system. ++I discovered that some systems don't have the right permissions on the serial +port for MBSE BBS. To fix this type the following commands: +
+su +password: enter root password here +chmod 666 /dev/ttyS0 +chown uucp.uucp /dev/ttyS0 +exit ++Note that /dev/ttyS0 is for COM1, /dev/ttyS1 for COM2 etc. ++ +
Go Back +
BBS doors dropfiles. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
BBS doors dropfiles.
-- -
Dropfiles for Unix BBS systems.
--Not all options that are available under DOS or OS/2 can be used with Unix -BBS systems and must be faked. -
- -
DOOR.SYS format.
--The door.sys format is a 52 lines ascii textfile, each line is terminated with -a cr/lf pair. In the setup it is possible to force the creation of MM-DD-YYYY -dates instead of the MM-DD-YY style. Newer doors sometimes need that. -
-Line Description ------ ----------------------------------------------------------------- -1 Port, 2 characters in DOS format, p.e. COM1 -2 Effective Baudrate -3 Databits -4 Nodenumber, 1..9999 -5 Locked baudrate -6 Screen display, Y=snoop on, N=snoop off. On Linux allways N. -7 Printer Y=on N=off -8 Page Bell Y=on N=off -9 Caller alarm Y=on N=off -10 Users first name and lastname -11 Users location -12 Voice/Home phone -13 Work/Dataphone -14 Password, empty if not available (stored coded). -15 Security level, 0..32768 -16 Users number of calls -17 Users last call date MM-DD-YY -18 Seconds remaining this call -19 Time left in minutes -20 ANSI, "GR" is yes, otherwise ? -21 Screen length -22 User mode, always N -23 Always blank -24 Always blank -25 Subscription expire date MM-DD-YY -26 Users record number -27 Default protocol -28 Users total number of uploads -29 Users total number of downloads -30 Users daily download kilobytes total -31 Daily download kilobyte limit -32 Users date of birth MM-DD-YY -33 Path to users database files Cannot be used on Linux. -34 Path to message database files -35 Sysop first and last name -36 Users handle -37 Next event starting time or "none" -38 Error-free connection Y=Yes or N=No -39 Always set to N -40 Always set to Y -41 Text color as defined in setup 7 = gray. -42 Always 0 -43 Last new files scan date MM-DD-YY -44 Time of this call HH:MM -45 Time of last call HH:MM -46 Always set to 32768 -47 Number of files downloaded today -48 Total kilobytes uploaded -49 Total kilobytes downloaded -50 Comment stored in users record -51 Always set to 0 -52 Total number of messages posted --
- -
DORINFOn.DEF dropfile.
--The DORINFOn.DEF file is a 12 lines ascii textfile, each line terminated with -a cr/lf pair. All characters in the file are uppercase. The n in the filename -represents the current line number and will be between 1 and 9. Using number -1 seems always fine. -
-Line Description ------- ------------------------------------------------------------------ -1 System name -2 Sysop's first name -3 Sysop's last name -4 Port name, like COM1, COM2 etc. COM0 = local -5 Baudrate format: "19200 BAUD-R,N,8,1" -6 Always 0 -7 Users firstname -8 Users lastname -9 Users location -10 Graphics mode: 0=no, 1=ANSI, 2=Avatar, 3=ANSI+Avatar -11 Security level, 0..32767 -12 Time left in minutes --- -
Go Back -
BBS doors dropfiles. + + + +++ + + diff --git a/html/misc/ftpserver.html b/html/misc/ftpserver.html index 0a817406..cabbf033 100644 --- a/html/misc/ftpserver.html +++ b/html/misc/ftpserver.html @@ -1,98 +1,98 @@ - - - - - - - - -Last update 22-Oct-2001
+
+ +
BBS doors dropfiles.
++ +
Dropfiles for Unix BBS systems.
++Not all options that are available under DOS or OS/2 can be used with Unix +BBS systems and must be faked. +
+ +
DOOR.SYS format.
++The door.sys format is a 52 lines ascii textfile, each line is terminated with +a cr/lf pair. In the setup it is possible to force the creation of MM-DD-YYYY +dates instead of the MM-DD-YY style. Newer doors sometimes need that. +
+Line Description +----- ----------------------------------------------------------------- +1 Port, 5 characters in DOS format, p.e. COM1: +2 Effective Baudrate +3 Databits +4 Nodenumber, 1..9999 +5 Locked baudrate +6 Screen display, Y=snoop on, N=snoop off. On Linux allways N. +7 Printer Y=on N=off +8 Page Bell Y=on N=off +9 Caller alarm Y=on N=off +10 Users first name and lastname +11 Users location +12 Voice/Home phone +13 Work/Dataphone +14 Password, empty if not available (stored coded). +15 Security level, 0..32768 +16 Users number of calls +17 Users last call date MM-DD-YY +18 Seconds remaining this call +19 Time left in minutes +20 ANSI, "GR" is yes, otherwise ? +21 Screen length +22 User mode, always N +23 Always blank +24 Always blank +25 Subscription expire date MM-DD-YY +26 Users record number +27 Default protocol +28 Users total number of uploads +29 Users total number of downloads +30 Users daily download kilobytes total +31 Daily download kilobyte limit +32 Users date of birth MM-DD-YY +33 Path to users database files Cannot be used on Linux. +34 Path to message database files +35 Sysop first and last name +36 Users handle +37 Next event starting time or "none" +38 Error-free connection Y=Yes or N=No +39 Always set to N +40 Always set to Y +41 Text color as defined in setup 7 = gray. +42 Always 0 +43 Last new files scan date MM-DD-YY +44 Time of this call HH:MM +45 Time of last call HH:MM +46 Always set to 32768 +47 Number of files downloaded today +48 Total kilobytes uploaded +49 Total kilobytes downloaded +50 Comment stored in users record +51 Always set to 0 +52 Total number of messages posted ++
+ +
DORINFOn.DEF dropfile.
++The DORINFOn.DEF file is a 12 lines ascii textfile, each line terminated with +a cr/lf pair. All characters in the file are uppercase. The n in the filename +represents the current line number and will be between 1 and 9. Using number +1 seems always fine. +
+Line Description +------ ------------------------------------------------------------------ +1 System name +2 Sysop's first name +3 Sysop's last name +4 Port name, like COM1, COM2 etc. COM0 = local +5 Baudrate format: "19200 BAUD-R,N,8,1" +6 Always 0 +7 Users firstname +8 Users lastname +9 Users location +10 Graphics mode: 0=no, 1=ANSI, 2=Avatar, 3=ANSI+Avatar +11 Security level, 0..32767 +12 Time left in minutes +++ +
Go Back +
Howto setup an FTP server to work with MBSE BBS. - - - --- - - + + + + + + + + +Last update 06-Jun-2001
-
- -
How to setup an FTP server to work with MBSE BBS.
-- -In order to let MBSE BBS and your FTP server to both function together you must -organize a special file structure. Note that even if you don't setup an FTP -server you must still create a structure like this for the fidonet mailer, -if you don't, mail and files will get lost! -Note that this description is written for wu-ftpd, on your distribution there -may be another ftpd installed. Don't use mbftpd yet! -
-
The filestructure I used is as follows:
--/var/spool/mbse/ftp/pub/dos_util/dos_4dos - Public download areas - | | | /dos_disk - | | | /dos_file - | | /virnet/mcafee - | | /win16 - | | /win32 - | /bin - FTP bin directory - | /etc - FTP etc directory - | /incoming - FTP public upload. - /mail/out - Your default outbound - | /out.009 - Outbound Zone 9 - | /inbound - Inbound directory - /raonly/upload - Non-public download areas - | /sysop - | /logfiles - /tic_queue - Queue for .tic files. - -- -In order to give DOS style names for fidonet sessions you must set the -DOS path and Unix path in mbsetup (1.3.11 and 1.3.12) to -"m:" and "/var/spool/mbse". Note that to get -forwarding of .tic files to work the tic_queue must be a -subdirectory of "/var/spool/mbse" too. You could actually use any drive letter for -the DOS path. --This means that a fidonet file attach from the dos_4dos public download -directory shall get the subject "M:\FTP\PUB\DOS_UTIL\DOS_4DOS\COMMAND.ZIP". - -
-As you can see, anonymous ftp users can't get to the mail, non-public -downloads etc. Normally, your BBS users have unix accounts and will be able -to do a ftp login and access any directory on your system. Because the bbs -users have mbsebbs as their shell and this shell is not in the file -/etc/shells the ftp daemon will not let the bbs users in. So even -your own bbs users must login as anonymous to get files from the ftp server. -
-Note the following directory permissions MUST BE SET!!!!::: See also -the man pages for the DARPA ftpd server. -
- -
-Directory owner group mode perms -------------------------------- ----- ----- ---- ---------- -/var/spool/mbse mbse bbs 0755 drwxr-xr-x -/var/spool/mbse/ftp root wheel 0555 dr-xr-xr-x -/var/spool/mbse/ftp/bin root wheel 0555 dr-xr-xr-x -/var/spool/mbse/ftp/bin/ls root bin 0111 ---x--x--x -/var/spool/mbse/ftp/etc root root 0555 dr-xr-xr-x -/var/spool/mbse/ftp/etc/passwd root root 0444 -r--r--r-- -/var/spool/mbse/ftp/etc/group root root 0444 -r--r--r-- -/var/spool/mbse/ftp/pub mbse bbs 0775 drwxrwxr-x -/var/spool/mbse/ftp/incoming ftp users 0755 drwxr-xr-x - --Note that all subdirectories under ../pub also must be owned by mbse - and group bbs and have at least mode 775 as long -as it are real bbs subdirectories. The bbs will maintain these directories -automatic and must have the rights to do so. - --In the /var/spool/mbse/ftp/etc/group file, add the group bbs so that your directory -listings give the proper groupname instead of a number. -
- -
Go Back -
Howto setup an FTP server to work with MBSE BBS. + + + +++ + + diff --git a/html/misc/index.htm b/html/misc/index.htm index 56b80af0..b8671b77 100644 --- a/html/misc/index.htm +++ b/html/misc/index.htm @@ -1,46 +1,46 @@ - - - - - - - - -Last update 06-Jun-2001
+
+ +
How to setup an FTP server to work with MBSE BBS.
++ +In order to let MBSE BBS and your FTP server to both function together you must +organize a special file structure. Note that even if you don't setup an FTP +server you must still create a structure like this for the fidonet mailer, +if you don't, mail and files will get lost! +Note that this description is written for wu-ftpd, on your distribution there +may be another ftpd installed. Don't use mbftpd yet! +
+
The filestructure I used is as follows:
++/var/spool/mbse/ftp/pub/dos_util/dos_4dos - Public download areas + | | | /dos_disk + | | | /dos_file + | | /virnet/mcafee + | | /win16 + | | /win32 + | /bin - FTP bin directory + | /etc - FTP etc directory + | /incoming - FTP public upload. + /mail/out - Your default outbound + | /out.009 - Outbound Zone 9 + | /inbound - Inbound directory + /raonly/upload - Non-public download areas + | /sysop + | /logfiles + /tic_queue - Queue for .tic files. + ++ +In order to give DOS style names for fidonet sessions you must set the +DOS path and Unix path in mbsetup (1.3.11 and 1.3.12) to +"m:" and "/var/spool/mbse". Note that to get +forwarding of .tic files to work the tic_queue must be a +subdirectory of "/var/spool/mbse" too. You could actually use any drive letter for +the DOS path. ++This means that a fidonet file attach from the dos_4dos public download +directory shall get the subject "M:\FTP\PUB\DOS_UTIL\DOS_4DOS\COMMAND.ZIP". + +
+As you can see, anonymous ftp users can't get to the mail, non-public +downloads etc. Normally, your BBS users have unix accounts and will be able +to do a ftp login and access any directory on your system. Because the bbs +users have mbsebbs as their shell and this shell is not in the file +/etc/shells the ftp daemon will not let the bbs users in. So even +your own bbs users must login as anonymous to get files from the ftp server. +
+Note the following directory permissions MUST BE SET!!!!::: See also +the man pages for the DARPA ftpd server. +
+ +
+Directory owner group mode perms +------------------------------- ----- ----- ---- ---------- +/var/spool/mbse mbse bbs 0755 drwxr-xr-x +/var/spool/mbse/ftp root wheel 0555 dr-xr-xr-x +/var/spool/mbse/ftp/bin root wheel 0555 dr-xr-xr-x +/var/spool/mbse/ftp/bin/ls root bin 0111 ---x--x--x +/var/spool/mbse/ftp/etc root root 0555 dr-xr-xr-x +/var/spool/mbse/ftp/etc/passwd root root 0444 -r--r--r-- +/var/spool/mbse/ftp/etc/group root root 0444 -r--r--r-- +/var/spool/mbse/ftp/pub mbse bbs 0775 drwxrwxr-x +/var/spool/mbse/ftp/incoming ftp users 0755 drwxr-xr-x + ++Note that all subdirectories under ../pub also must be owned by mbse + and group bbs and have at least mode 775 as long +as it are real bbs subdirectories. The bbs will maintain these directories +automatic and must have the rights to do so. + ++In the /var/spool/mbse/ftp/etc/group file, add the group bbs so that your directory +listings give the proper groupname instead of a number. +
+ +
Go Back +
Miscellaneous Documents - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
Miscellaneous Documents
- -Introduction
--This is an overview of used unofficial documents for the development of the -MBSE BBS package. -
-Michiel Broek. -
-
-Documents
--
- -- Implementation and Usage of Filefind Utilities, R.Williamson -
- Integration of IP-Nodes in the nodelist, L.Behet -
- FILE_ID.DIZ Information, R.Moller -
- How to setup an FTP server with MBSE BBS, M.Broek -
- JAM Message Base Proposal, J.Homrighausen -
- Binkley style mailer outbound for MBSE BBS, M.Broek -
- Semafore files for MBSE BBS, M.Broek -
- System load and usleep() code, M.Broek -
- BBS doors dropfiles, M. Broek -
- -Back to Index -
Miscellaneous Documents + + + +++ + + diff --git a/html/misc/ipmailer.html b/html/misc/ipmailer.html index 8faf1c1b..63ef8587 100644 --- a/html/misc/ipmailer.html +++ b/html/misc/ipmailer.html @@ -1,172 +1,172 @@ - - -Last update 02-Feb-2001
+
+ +
Miscellaneous Documents
+ +Introduction
++This is an overview of used unofficial documents for the development of the +MBSE BBS package. +
+Michiel Broek. +
+
+Documents
++
+ +- Implementation and Usage of Filefind Utilities, R.Williamson +
- Integration of IP-Nodes in the nodelist, L.Behet +
- FILE_ID.DIZ Information, R.Moller +
- How to setup an FTP server with MBSE BBS, M.Broek +
- JAM Message Base Proposal, J.Homrighausen +
- Binkley style mailer outbound for MBSE BBS, M.Broek +
- Semafore files for MBSE BBS, M.Broek +
- System load and usleep() code, M.Broek +
- BBS doors dropfiles, M. Broek +
+ +Back to Index +
Integration of IP-Nodes in the nodelist. - - - - --Publication: FSP-???? -Revision: 1 -Title: Integration of IP-Nodes in the nodelist (FTS-0005) -Author: Lothar Behet, 2:2446/301 -Revision Date: 25 October 1998 -Expiry Date: ----------------------------------------------------------------------- - -Contents: -1. Required fields according to FTS-0005, basic flags for ip-nodes -2. Optional extensions -3. Addendum ----------------------------------------------------------------------- - -1. Description of the nodelist format --------------------------------------- - -Every node entry contains the following 8 fields: - -keyword,node_number,node_name,location,sysop_name, -phone_number,baud_rate,flags - -Certain fields have defined values according to FTS-0005. - -1.1. Implementation for IP-connectivity - Because of the limited characterset in the phone_field and - to avoid any misinterpretion by conventional dialing, the - ip-specific address-information is entered in another field - and there are additional flags required. - -1.1.1. Field #1 (keyword) is PVT for an ip-only node without - conventional phone number related connectivity. In this - case, the phone field contains "-Unpublished-" according - to FTS-0005. - -1.1.2. Field #2 (node_number) contains the node number within his - net and zone. - -1.1.3. Field #3 (node_name) is used for the FQDN (Fully Qualified - Domain Name) or the ip-address. - -1.1.4. Field #4 (location) contains the geographical location of - the node. While some nets/regions cannot supply their - ip-only nodes with a adequate link, these nodes may be - collected in a seperate net or region, until their original - net/region support additional ip-connectivity. This special - net/region is definitely a temporary solution for routing - within a region or zone! - -1.1.5. Field #5 (sysop_name) represants the name of the system - operator. - -1.1.6. Field #6 (phone_number) contains the phone_number for - conventional connectivity. In case of an ip-only node - it must contain "-Unpublished-". - -1.1.7. Field #7 (baud_rate) contains the maximum baud rate for - conventional connectivity or 300 in case of an ip_only node. - -1.1.8. Field #8 (flags) represents operational definitions for the - node. - Note that these are user flags. - The ip-flags consist of two parts: - A basic transport and an optional non-standard port, - seperated by a colon. - The default port may be omitted, but is listed as optional - parameter in this document. In some cases, two flag names - are mentioned: - The second one is supported by some software nowadays, but - these values may conflict with other programs, which not - completely decode the length of each individual flag (i.e. - TELN conflicts with the T-flag for online-time) - Additional flags for ip-nodes are: - -1.1.8.1. IBN[:24554] (Argus: BND[:24554]) - BinkP protocol - -1.1.8.2. IFC[:60179] - Raw protocol as used by ifcico - -1.1.8.3. ITN[:23] (Argus: TEL[:23]) - Telnet protocol. Some variants of ifcico support Telnet - on port 60177, which should be added as additional flag - ITN:60177. - -1.1.8.4. IVM[:3141] - Vmodem protocol - -1.1.8.5. IP - General flag for special protocol specifications, if the - flags conforming to 1.1.8.1. to 1.1.8.4. are not relevant. - -1.1.9. Comments on the proposed nodelist flags - The additional flagnames in () are supported at this moment - by Argus, based on the use in z2r50. But the TEL[NET]-flag - stays in conflict with the generally in all zones and - regions used T-flag (online time according to FSC-0062). - - -2. Optional extensions for future use --------------------------------------- - -While the above mentioned flags (1.1.8.1 to 1.1.8.4) define a -minimum set of operational flags for ip-nodes, several additions -are already foreseeable at this moment. - -2.1. Additional sessions_handshake parameters - There is at least one program, which supports several - transport protocols according to chapter 1.1.8. on a - single port. If other programs should imitate this habit, - then the following extension to the flag suite 1.1.8. - (transport[:port[:handshake]])is advised: - -2.1.1. FTS-0001 session handshake: 1 -2.1.2. Yoohoo session handshake : Y -2.1.3. EMSI sessions handshake : E -2.1.4. BinkP sessions handshake : B - -2.2. Non-handshaking protocols - While the definitions until this chapter describe direct - handshaking sessions with optional password authentification, - there are several other methods for the tunneling of fidonet - data via the internet available. - The setup of these connections does not rely on the nodelist - (at this moment of writing), but we can think of standard - setup procedures to use the nodelist for configuration of - this additional transport methods. - Therefore the following flags 2.2.1. to 2.2.4. are advised - for at least informational purpose. - -2.2.1. IFT - FTP (File Transfer Protocol) - -2.2.2. ITX - TransX, an Email based variant - -2.2.3. IUC - Uuencoded packet (one packet per message) - -2.2.4. IEM - Email based (generally, without exact specification at - this moment) - - -3. Addendum ------------- - -This proposal is based on a maximum compatibility to generally used -definitions and standards within the Fidonet community. -Future developments might make additions necessary, if they can not -be expressed with the existing set of flags as defined by this FSP. -- -Go Back - - - - + + +
Integration of IP-Nodes in the nodelist. + + + + ++Publication: FSP-???? +Revision: 1 +Title: Integration of IP-Nodes in the nodelist (FTS-0005) +Author: Lothar Behet, 2:2446/301 +Revision Date: 25 October 1998 +Expiry Date: +---------------------------------------------------------------------- + +Contents: +1. Required fields according to FTS-0005, basic flags for ip-nodes +2. Optional extensions +3. Addendum +---------------------------------------------------------------------- + +1. Description of the nodelist format +-------------------------------------- + +Every node entry contains the following 8 fields: + +keyword,node_number,node_name,location,sysop_name, +phone_number,baud_rate,flags + +Certain fields have defined values according to FTS-0005. + +1.1. Implementation for IP-connectivity + Because of the limited characterset in the phone_field and + to avoid any misinterpretion by conventional dialing, the + ip-specific address-information is entered in another field + and there are additional flags required. + +1.1.1. Field #1 (keyword) is PVT for an ip-only node without + conventional phone number related connectivity. In this + case, the phone field contains "-Unpublished-" according + to FTS-0005. + +1.1.2. Field #2 (node_number) contains the node number within his + net and zone. + +1.1.3. Field #3 (node_name) is used for the FQDN (Fully Qualified + Domain Name) or the ip-address. + +1.1.4. Field #4 (location) contains the geographical location of + the node. While some nets/regions cannot supply their + ip-only nodes with a adequate link, these nodes may be + collected in a seperate net or region, until their original + net/region support additional ip-connectivity. This special + net/region is definitely a temporary solution for routing + within a region or zone! + +1.1.5. Field #5 (sysop_name) represants the name of the system + operator. + +1.1.6. Field #6 (phone_number) contains the phone_number for + conventional connectivity. In case of an ip-only node + it must contain "-Unpublished-". + +1.1.7. Field #7 (baud_rate) contains the maximum baud rate for + conventional connectivity or 300 in case of an ip_only node. + +1.1.8. Field #8 (flags) represents operational definitions for the + node. + Note that these are user flags. + The ip-flags consist of two parts: + A basic transport and an optional non-standard port, + seperated by a colon. + The default port may be omitted, but is listed as optional + parameter in this document. In some cases, two flag names + are mentioned: + The second one is supported by some software nowadays, but + these values may conflict with other programs, which not + completely decode the length of each individual flag (i.e. + TELN conflicts with the T-flag for online-time) + Additional flags for ip-nodes are: + +1.1.8.1. IBN[:24554] (Argus: BND[:24554]) + BinkP protocol + +1.1.8.2. IFC[:60179] + Raw protocol as used by ifcico + +1.1.8.3. ITN[:23] (Argus: TEL[:23]) + Telnet protocol. Some variants of ifcico support Telnet + on port 60177, which should be added as additional flag + ITN:60177. + +1.1.8.4. IVM[:3141] + Vmodem protocol + +1.1.8.5. IP + General flag for special protocol specifications, if the + flags conforming to 1.1.8.1. to 1.1.8.4. are not relevant. + +1.1.9. Comments on the proposed nodelist flags + The additional flagnames in () are supported at this moment + by Argus, based on the use in z2r50. But the TEL[NET]-flag + stays in conflict with the generally in all zones and + regions used T-flag (online time according to FSC-0062). + + +2. Optional extensions for future use +-------------------------------------- + +While the above mentioned flags (1.1.8.1 to 1.1.8.4) define a +minimum set of operational flags for ip-nodes, several additions +are already foreseeable at this moment. + +2.1. Additional sessions_handshake parameters + There is at least one program, which supports several + transport protocols according to chapter 1.1.8. on a + single port. If other programs should imitate this habit, + then the following extension to the flag suite 1.1.8. + (transport[:port[:handshake]])is advised: + +2.1.1. FTS-0001 session handshake: 1 +2.1.2. Yoohoo session handshake : Y +2.1.3. EMSI sessions handshake : E +2.1.4. BinkP sessions handshake : B + +2.2. Non-handshaking protocols + While the definitions until this chapter describe direct + handshaking sessions with optional password authentification, + there are several other methods for the tunneling of fidonet + data via the internet available. + The setup of these connections does not rely on the nodelist + (at this moment of writing), but we can think of standard + setup procedures to use the nodelist for configuration of + this additional transport methods. + Therefore the following flags 2.2.1. to 2.2.4. are advised + for at least informational purpose. + +2.2.1. IFT + FTP (File Transfer Protocol) + +2.2.2. ITX + TransX, an Email based variant + +2.2.3. IUC + Uuencoded packet (one packet per message) + +2.2.4. IEM + Email based (generally, without exact specification at + this moment) + + +3. Addendum +------------ + +This proposal is based on a maximum compatibility to generally used +definitions and standards within the Fidonet community. +Future developments might make additions necessary, if they can not +be expressed with the existing set of flags as defined by this FSP. ++ +Go Back + + + + diff --git a/html/misc/jam.html b/html/misc/jam.html index c1ca8d50..d30d847a 100644 --- a/html/misc/jam.html +++ b/html/misc/jam.html @@ -1,638 +1,638 @@ - - -
JAM Message Base Proposal. - - - - --Filename....: JAM-001 -Rev.........: 001 -Dated.......: 93-07-01 -Status .....: Released -Subject.....: JAM message base proposal -Author......: Joaquim Homrighausen -Co-Authors..: Andrew Milner, Mats Birch, Mats Wallin - - --------------------------------------------------------------------- - JAM(mbp) - The Joaquim-Andrew-Mats Message Base Proposal - --------------------------------------------------------------------- - Copyright 1993 Joaquim Homrighausen, Andrew Milner, - Mats Birch, Mats Wallin. - ALL RIGHTS RESERVED. - --------------------------------------------------------------------- - - - ===================================================================== - Restrictions - --------------------------------------------------------------------- - JAM may be used by any developer as long as these specifications are - followed exactly. JAM may be used free-of-charge by any developer - for any purpose, commercially or otherwise. - - This document may be freely copied and distributed, but must NEVER be - distributed in a modified form. If you have an enhancement request, - please contact the author of this document; do not change it - yourself. - - All applications that support JAM must include one of the following - notices in their documentation and somewhere in the product's credit - section: - - "JAM(mbp) - Copyright 1993 Joaquim Homrighausen, Andrew Milner, - Mats Birch, Mats Wallin. - ALL RIGHTS RESERVED." - - or - - "This product uses the JAM(mbp) API - - Copyright 1993 Joaquim Homrighausen, Andrew Milner, Mats Birch, - Mats Wallin. ALL RIGHTS RESERVED." - - No organization, company, person, entity, or other being may impose - any fees for any reason for providing this document or the - accompanying API. This document and the accompanying API may not be - sold or otherwise transferred for personal or company gain under any - circumstances. - - ===================================================================== - Definitions and general notes - --------------------------------------------------------------------- - CURRENTREV 1 - - JAM The JAM message base format. - - CRC Cyclic Redundancy Check. All CRC values - calculated on strings must assume that the - data within the string has been converted - to lowercase (A-Z = a-z). - - CRC-32 32-bit CRC (as used in the Zmodem file - transfer protocol) value. The polynom for - a CRC-32 is edb88320H and the CRC-32 seed - is -1L (ffffffffH). - - uchar Unsigned 8-bit value - - ushort Unsigned 16-bit value - - ulong Unsigned 32-bit value - - UNIX date An ulong representing the number of seconds - since midnight, January 1, 1970. UNIX-style - dates is the only form of time stamps used - in JAM (1). - - Message # The physical record number within the index - file is used as a message number. The - lowest message number is one (1) and the - highest message number is 4294967295 - (ffffffffH). - - FTN FidoNet Technology Network - - FTS FidoNet Technical Standard - - (1) All timestamps created locally (i.e. those not imported from - other systems) are stored in local time. - - ===================================================================== - Files - --------------------------------------------------------------------- - Each conference is made up from four files. How and where these files - are stored and named is implementation dependant. The only file with - a fixed minimum size is the .JHR (header data) file. It has a 1024- - byte block used to hold information about a specific message area as - described later. - - filename.JHR - Message header data - filename.JDT - Message text data - filename.JDX - Message index - filename.JLR - Lastread information - - A future revision of JAM may also include a file that holds the - following three items: - - - The highest assigned user number - - The last generated message ID - - A global conference list with the conference name, description, - and physical location of the message base. - - ===================================================================== - .JHR file header - --------------------------------------------------------------------- - Below is the format of the 1024-byte record at the beginning of all - .JHR files. The first actual message header starts at offset 1024 in - the .JHR file. - - FixedHeaderInfoStruct: - ulong Signature; //- -followed by - ulong datecreated; // Creation date - ulong modcounter; // Update counter - ulong activemsgs; // Number of active (not deleted) msgs - ulong passwordcrc; // CRC-32 of password to access - ulong basemsgnum; // Lowest message number in index file - uchar RESERVED[1000]; // Reserved space - end; - - MODCOUNTER must be incremented and updated on disk each time an - application modifies the contents of the message base. When it - reaches ffffffffH, it wraps to zero. - - --------------------------------------------------------------------- - BaseMsgNum Lowest message number in index file - --------------------------------------------------------------------- - This field determines the lowest message number in the index file. - The value for this field is one (1) when a message area is first - created. By using this field, a message area can be packed (deleted - messages are removed) without renumbering it. If BaseMsgNum contains - 500, the first index record points to message number 500. - - BaseMsgNum has to be taken into account when an application - calculates the next available message number (for creating new - messages) as well as the highest and lowest message number in a - message area. - - --------------------------------------------------------------------- - ????????.JHR Message headers - --------------------------------------------------------------------- - The .JHR file contains none or more Header records. Each record - define one message and contains information about the message and its - text (if any). The Header record is of variable length. The layout of - the Header record follows. - - MessageHeader: - MessageFixedHeader: - ulong Signature; // followed by - ushort Revision; // Revision level of header (1) - ushort ReservedWord; // Reserved for future use - ulong SubfieldLen; // Length of subfields (2) - ulong TimesRead; // Number of times message read - ulong MSGIDcrc; // CRC-32 of MSGID line (3) - ulong REPLYcrc; // CRC-32 of REPLY line (3) - ulong ReplyTo; // This msg is a reply to.. - ulong Reply1st; // First reply to this msg - ulong Replynext; // Next msg in reply chain - ulong DateWritten; // When msg was written - ulong DateReceived; // When msg was read by recipient - ulong DateProcessed;// When msg was processed by tosser/ - // scanner - ulong MessageNumber;// Message number (1-based) - ulong Attribute; // Msg attribute, see "Msg Attributes" - ulong Attribute2; // Reserved for future use - ulong Offset; // Offset of text in ????????.JDT file - ulong TxtLen; // Length of message text - ulong PasswordCRC; // CRC-32 of password to access message - ulong Cost; // Cost of message - end; - SubField1 // Extra fields as defined below - . - . - SubFieldXX - end; - - (1) This field is intended for future revisions of the specifications - to allow the use of a different fixed-length binary message - header. The current revision level is one (1). - - (2) The SubfieldLen field is set to zero (0) if the header does not - have any subfield data. I.e. the length of the binary header is - not included in this field. - - (3) When calculating the CRC-32 of the MSGID and REPLY lines, the - text ^aMSGID: and ^aREPLY: should be removed as well as all - leading and trailing white space characters. - - - The SubField structure is made up of an ID, a length specifier, and - a block of data. Zero or more subfields may follow the fixed-length - binary header. SubFields are not stored in any specific order and - are not terminated by any specific character unless otherwise - specified. - - SubField: - ushort LoID; // Field ID, 0-65535 - ushort HiID; // Reserved for future use - ulong datlen; // Length of buffer that follows - uchar Buffer[datlen]; // DATLEN bytes of data - end; - - --------------------------------------------------------------------- - Defined LoID codes - --------------------------------------------------------------------- - - ID=0, Name=OADDRESS - - A network address. This is used to specify the originating address. - More than one OADDRESS field may exist. DATLEN must not exceed 100 - characters. For a FidoNet-style address, this field must follow the - ZONE:NET/NODE.POINT@DOMAIN format where .POINT is excluded if zero - and @DOMAIN is excluded if unknown. - - - ID=1, Name=DADDRESS - - A network address. This is used to specify the destination address. - More than one DADDRESS field may exist (e.g. carbon copies). DATLEN - must not exceed 100 characters. For a FidoNet-style address, this - field must follow the ZONE:NET/NODE.POINT@DOMAIN format where .POINT - is excluded if zero and @DOMAIN is excluded if unknown. - - - ID=2, Name=SENDERNAME - - The sender (author) of the message. DATLEN must not exceed 100 - characters. - - - ID=3, Name=RECEIVERNAME - - The recipient of the message. DATLEN must not exceed 100 characters. - - - ID=4, Name=MSGID - - Used to store the message identification data. All data not relevant - to the actual ID string, including leading and trailing white space - characters should be removed. DATLEN must not exceed 100 characters. - - - ID=5, Name=REPLYID - - Used to store the message reply data. All data not relevant to the - actual reply string, including leading and trailing white space - characters should be removed. DATLEN must not exceed 100 characters. - - - ID=6, Name=SUBJECT - - The subject of the message. DATLEN must not exceed 100 characters. - Note that this field may not be used for FidoNet-style file attaches - or file requests. - - - ID=7, Name=PID - - Used to store the FTN PID kludge line. Only the actual PID data is - stored and ^aPID: is stripped along with any leading and trailing - white space characters. DATLEN must not exceed 40 characters. - - - ID=8, Name=TRACE - - This is also referred to as ^aVia information in FTNs. It contains - information about a system which the message has travelled through. - The format of the field is where: - - YYYY is the year (1992-9999) - MM is the month (01-12) - DD is the day (01-31) - HH is the hour (00-23) - MM is the minute (00-59) - SS is the second (00-59) - - The timestamp is stored in ASCII (0-9) characters. The network - address is the address of the system. It is expressed in ASCII - notation in the native format of the forwarding system. - - - ID=9, Name=ENCLOSEDFILE - - A file attached to the message. Only one filename may be specified - per subfield. No wildcard characters are allowed. If this subfield - is present in a message header, the ATTRIBUTE must include the - MSG_FILEATTACH bit. - - - ID=10, Name=ENCLOSEDFILEWALIAS - - Identical to ENCLOSEDFILE with the exception that the filename is - followed by a (00H) and an alias filename to be transmited to - the remote system in place of the local name of the file. - - - ID=11, Name=ENCLOSEDFREQ - - A request for one or more files. Only one filemask may be specified - per subfield. If the filemask contains a complete path, it is to be - regarded as an update file request. If this subfield is present in a - message header, the ATTRIBUTE must include the MSG_FILEREQUEST bit. - To indicate that a password is to be transmitted along with the - request, a (00H) character followed by the password is - appended. E.g. SECRET*.* MYPASSWORD. - - - ID=12, Name=ENCLOSEDFILEWCARD - - One or more files attached to the message. Only one filename may be - specified per subfield. Wildcard characters are allowed. If this - subfield is present in a message header, the ATTRIBUTE must include - the MSG_FILEATTACH bit. - - - ID=13, Name=ENCLOSEDINDIRECTFILE - - One or more files attached to the message. The filename points to an - ASCII file with one filename entry per line. If alias filenames are - to be used, they are specified after the actual filename and - separated by a (00H) character, e.g. C:\MYFILE.LZH NEWS. - Wildcard characters are not allowed. - - - ID=1000, Name=EMBINDAT - - Reserved for future use. - - - ID=2000, Name=FTSKLUDGE - - An FTS-compliant "kludge" line not otherwise represented here. All - data not relevant to the actual kludge line, including leading and - trailing white space and ^A (01H) characters should be removed. - DATLEN must not exceed 255 characters. The FTS kludges INTL, TOPT, - and FMPT must never be stored as separate SubFields. Their data must - be extracted and used for the address SubFields. - - - ID=2001, Name=SEENBY2D - - Used to store two-dimensional (net/node) SEEN-BY information often - used in FTN conference environments. Only the actual SEEN-BY data is - stored and ^aSEEN-BY: or SEEN-BY: is stripped along with any leading - and trailing white space characters. - - - ID=2002, Name=PATH2D - - Used to store two-dimensional (net/node) PATH information often used - in FTN conference environments. Only the actual PATH data is stored - and ^aPATH: is stripped along with any leading and trailing white - space characters. - - - ID=2003, Name=FLAGS - - Used to store the FTN FLAGS kludge information. Note that all FLAG - options that have binary representation in the JAM message header - must be removed from the FLAGS string prior to storing it. Only - the actual flags option string is stored and ^aFLAGS is stripped - along with any leading and trailing white space characters. - - - ID=2004, Name=TZUTCINFO - - Time zone information. This subfield consists of four mandatory - bytes and one optional. The first character may be a plus (+) or a - minus (-) character to indicate a location east (plus) or west - (minus) of UTC 0000. The plus character is implied unless the first - character is a minus character. The following four bytes must be - digits in the range zero through nine and indicates the offset in - hours and minutes. E.g. 0100 indicates an offset of one hour east of - UTC. - - --------------------------------------------------------------------- - Message attributes - --------------------------------------------------------------------- - MSG_LOCAL (0x00000001L) // Msg created locally - MSG_INTRANSIT (0x00000002L) // Msg is in-transit - MSG_PRIVATE (0x00000004L) // Private - MSG_READ (0x00000008L) // Read by addressee - MSG_SENT (0x00000010L) // Sent to remote - MSG_KILLSENT (0x00000020L) // Kill when sent - MSG_ARCHIVESENT (0x00000040L) // Archive when sent - MSG_HOLD (0x00000080L) // Hold for pick-up - MSG_CRASH (0x00000100L) // Crash - MSG_IMMEDIATE (0x00000200L) // Send Msg now, ignore restrictions - MSG_DIRECT (0x00000400L) // Send directly to destination - MSG_GATE (0x00000800L) // Send via gateway - MSG_FILEREQUEST (0x00001000L) // File request - MSG_FILEATTACH (0x00002000L) // File(s) attached to Msg - MSG_TRUNCFILE (0x00004000L) // Truncate file(s) when sent - MSG_KILLFILE (0x00008000L) // Delete file(s) when sent - MSG_RECEIPTREQ (0x00010000L) // Return receipt requested - MSG_CONFIRMREQ (0x00020000L) // Confirmation receipt requested - MSG_ORPHAN (0x00040000L) // Unknown destination - MSG_ENCRYPT (0x00080000L) // Msg text is encrypted (1) - MSG_COMPRESS (0x00100000L) // Msg text is compressed (1) - MSG_ESCAPED (0x00200000L) // Msg text is seven bit ASCII (1) - MSG_FPU (0x00400000L) // Force pickup - MSG_TYPELOCAL (0x00800000L) // Msg is for local use only - MSG_TYPEECHO (0x01000000L) // Msg is for conference distribution - MSG_TYPENET (0x02000000L) // Msg is direct network mail - MSG_NODISP (0x20000000L) // Msg may not be displayed to user - MSG_LOCKED (0x40000000L) // Msg is locked, no editing possible - MSG_DELETED (0x80000000L) // Msg is deleted - - (1) This revision of JAM does not include compression, encryption, or - escaping. The bits are reserved for future use. - - ===================================================================== - ????????.JDT Message text - --------------------------------------------------------------------- - The .JDT file contains the text of messages. The text is stored as an - stream of seven or eight bit ASCII data. Allowed characters in the - text are 00H through ffH unless the header ATTRIBUTE field has the - MSG_ESCAPED bit enabled, in which case the legal range of data is 20H - through 7eH. - - An escaped character is stored as \ where is the two digit - hexadecimal ASCII value of the character. A single \ is stored as \\ - or \5C. The case of the hexadecimal ASCII value is irrelevant, i.e. - 5c is treated as 5C. - - ===================================================================== - ????????.JDX Message index - --------------------------------------------------------------------- - The .JDX file is used to quickly locate messages for any given user - name or to locate a message with a specific number. Each record in - the file consists of two ulongs. The first ulong holds the CRC-32 of - the recipient's name (lowercase), the second ulong holds the - physical offset of the message header in the .JHR (header) file. - - The record number (+BaseMsgNum) within the .JDX file determines a - message's number. - - If both ulongs are -1 (ffffffffH), there is no corresponding message - header. - - ===================================================================== - ????????.JLR Lastread storage - --------------------------------------------------------------------- - The .JLR file is used to maintain a user's position within a message - area. The layout of the "lastread" record follows. One record per - user is required. - - LastRead: - ulong UserCRC; // CRC-32 of user name (lowercase) (1) - ulong UserID; // Unique UserID - ulong LastReadMsg; // Last read message number - ulong HighReadMsg; // Highest read message number - end; - - (1) The functions to convert a string to lowercase characters that - are provided in the API will only convert characters A-Z (into - a-z). It is required that this convention is followed by all - applications. - - The UserID field is a unique number for each user. If the "lastread" - record is deleted, UserCRC and UserID are both set to -1 - (ffffffffH). An application may not depend on any specific order in - the .JLR file. A user's "lastread" record may appear anywhere in the - file and must be searched for when retrieving it and when storing an - updated record. - - ===================================================================== - Updating message headers - --------------------------------------------------------------------- - If a header record grows after is has been retrieved from the .JHR - file, it must be appended to the end of the .JHR file since it would - overwrite the following header otherwise. The .JDX file must be - properly updated to indicate the new location of the header record. - The old header record must be changed to indicate that it has been - deleted by setting the MSG_DELETED bit in the Attribute field and the - TextLen field to zero (to prevent a maintenance program from removing - the message text that is now pointed to by another header). - - ===================================================================== - Message base sharing and locking - --------------------------------------------------------------------- - To allow several programs to access the message base at any given - time, region locking is used to protect the message base from being - corrupted during updates. - - When an application needs to write to any of the message base files, - it must first attempt to lock the first byte of the .JHR (header) - file. If the lock call fails, the application must either fail or - attempt to lock the file again. The message base files may under no - circumstances be updated if the application cannot successfully lock - the .JHR file. - - Note that data acquired (read) from the message base may not be used - when writing data to the message base, unless the application has - maintained a lock of the message base from the time the data was - acquired or the MODCOUNTER field is the same as when the data was - acquired. - - The application must open the files in shareable (DENYNONE) read/ - write or readonly mode. The only exception to this is an application - that requires exclusive access to the message base, such as a message - base maintenance utility, it should open the files in non-shareable - (DENYALL) read/write mode. - - ===================================================================== - Reply threads and linking - --------------------------------------------------------------------- - JAM introduces a new reply link pointer, not commonly used today. - This section is an attempt to describe how reply threads, reply - linking, and this new reply link pointer is implemented in JAM. - - One of the major differences is that reply threads in JAM are not - based on similar or identical subjects of messages since this method - does not allow for proper reply threads. - - The method used in JAM is based on the immediate relation between any - given message and direct replies to it. This is supported by many - message editors by using the MSGID and REPLY FTS kludge fields. These - are common, although expressed differently, in messages not based on - FidoNet technology, such as RFC-822. The obvious advantages include - allowing a program to easily find the original message to a reply, - and to find all replies to any given message. - - The reply thread information consists of three fields: ReplyTo, - Reply1st, and ReplyNext. The reason for three fields, as opposed to - just two, is that with two fields, it is only possible to keep track - of the original message of a reply (which is sufficient) and one - reply to any given message (which is not sufficient). With three - fields, it is possible to maintain a thread of any number of replies - to any given message. - - In the description of the different fields below, the following - messages and message numbers will be referred to: - - 1 -> 2 -> 4 -> 5 - : : - : +--> 8 - : - +--> 3 -> 7 - : - +--> 6 - - Message number two, three, and six are replies to message number one. - Message number four and eight are replies to message number two. - Message number seven is a reply to message number three. - Message number five is a reply to message number four. - - --------------------------------------------------------------------- - ReplyTo - --------------------------------------------------------------------- - This field holds the number of the message that this message is a - reply to. In the example above, the ReplyTo field would contain the - following values: - - Message number one would contain zero; message number two, three, and - six, would contain one; message number four and eight would contain - two; message number seven would contain three, and message number - five would contain four. - - --------------------------------------------------------------------- - Reply1st - --------------------------------------------------------------------- - This field holds the number of the first message that is a reply to - this message. In the example above, the Reply1st field would contain - the following values: - - Message number one would contain two, message number three would - contain seven, and message number four would contain five. All other - messages would contain zero. - - --------------------------------------------------------------------- - ReplyNext - --------------------------------------------------------------------- - This field is used to create the actual message thread or chain. In - the event that there is more than one reply to any given message, it - is necessary to maintain a thread of all the replies; this is due to - the fact that the original message can only hold information about - the first reply (the Reply1st field) to it. - - The first reply (which the original message's Reply1st field holds), - has its ReplyNext field pointing to the second reply, the second - reply's ReplyNext field poinst to the third reply, and so on. - - In the example above, the ReplyNext field would contain the following - values: - - Message number two would contain three, message number three would - contain six, and message number four would contain eight. All other - messages would contain zero. - - ===================================================================== - Contacts - --------------------------------------------------------------------- - Joaquim Homrighausen Telefax: +352 316 702 - 389, route d'Arlon Modem: +352 316 702 - L-8011 Strassen eMail: 2:270/17@fidonet - Luxembourg joho@abs.lu - - Andrew Milner Telefax: +352 251 621 - 9a, Boulevard Joseph II Modem: +352 251 621 - L-1840 Belair eMail: 2:270/18@fidonet - Luxembourg andrew@fido.lu - - Mats Wallin Telefax: +46 8 6453285 - F”rskottsv„gen 11 Modem: +46 8 6453882 - S-126 44 H„gersten eMail: 2:201/329@fidonet - Sweden mw@fido.lu - Go Back - - - - + + +
JAM Message Base Proposal. + + + + ++Filename....: JAM-001 +Rev.........: 001 +Dated.......: 93-07-01 +Status .....: Released +Subject.....: JAM message base proposal +Author......: Joaquim Homrighausen +Co-Authors..: Andrew Milner, Mats Birch, Mats Wallin + + --------------------------------------------------------------------- + JAM(mbp) + The Joaquim-Andrew-Mats Message Base Proposal + --------------------------------------------------------------------- + Copyright 1993 Joaquim Homrighausen, Andrew Milner, + Mats Birch, Mats Wallin. + ALL RIGHTS RESERVED. + --------------------------------------------------------------------- + + + ===================================================================== + Restrictions + --------------------------------------------------------------------- + JAM may be used by any developer as long as these specifications are + followed exactly. JAM may be used free-of-charge by any developer + for any purpose, commercially or otherwise. + + This document may be freely copied and distributed, but must NEVER be + distributed in a modified form. If you have an enhancement request, + please contact the author of this document; do not change it + yourself. + + All applications that support JAM must include one of the following + notices in their documentation and somewhere in the product's credit + section: + + "JAM(mbp) - Copyright 1993 Joaquim Homrighausen, Andrew Milner, + Mats Birch, Mats Wallin. + ALL RIGHTS RESERVED." + + or + + "This product uses the JAM(mbp) API - + Copyright 1993 Joaquim Homrighausen, Andrew Milner, Mats Birch, + Mats Wallin. ALL RIGHTS RESERVED." + + No organization, company, person, entity, or other being may impose + any fees for any reason for providing this document or the + accompanying API. This document and the accompanying API may not be + sold or otherwise transferred for personal or company gain under any + circumstances. + + ===================================================================== + Definitions and general notes + --------------------------------------------------------------------- + CURRENTREV 1 + + JAM The JAM message base format. + + CRC Cyclic Redundancy Check. All CRC values + calculated on strings must assume that the + data within the string has been converted + to lowercase (A-Z = a-z). + + CRC-32 32-bit CRC (as used in the Zmodem file + transfer protocol) value. The polynom for + a CRC-32 is edb88320H and the CRC-32 seed + is -1L (ffffffffH). + + uchar Unsigned 8-bit value + + ushort Unsigned 16-bit value + + ulong Unsigned 32-bit value + + UNIX date An ulong representing the number of seconds + since midnight, January 1, 1970. UNIX-style + dates is the only form of time stamps used + in JAM (1). + + Message # The physical record number within the index + file is used as a message number. The + lowest message number is one (1) and the + highest message number is 4294967295 + (ffffffffH). + + FTN FidoNet Technology Network + + FTS FidoNet Technical Standard + + (1) All timestamps created locally (i.e. those not imported from + other systems) are stored in local time. + + ===================================================================== + Files + --------------------------------------------------------------------- + Each conference is made up from four files. How and where these files + are stored and named is implementation dependant. The only file with + a fixed minimum size is the .JHR (header data) file. It has a 1024- + byte block used to hold information about a specific message area as + described later. + + filename.JHR - Message header data + filename.JDT - Message text data + filename.JDX - Message index + filename.JLR - Lastread information + + A future revision of JAM may also include a file that holds the + following three items: + + - The highest assigned user number + - The last generated message ID + - A global conference list with the conference name, description, + and physical location of the message base. + + ===================================================================== + .JHR file header + --------------------------------------------------------------------- + Below is the format of the 1024-byte record at the beginning of all + .JHR files. The first actual message header starts at offset 1024 in + the .JHR file. + + FixedHeaderInfoStruct: + ulong Signature; //+ +followed by + ulong datecreated; // Creation date + ulong modcounter; // Update counter + ulong activemsgs; // Number of active (not deleted) msgs + ulong passwordcrc; // CRC-32 of password to access + ulong basemsgnum; // Lowest message number in index file + uchar RESERVED[1000]; // Reserved space + end; + + MODCOUNTER must be incremented and updated on disk each time an + application modifies the contents of the message base. When it + reaches ffffffffH, it wraps to zero. + + --------------------------------------------------------------------- + BaseMsgNum Lowest message number in index file + --------------------------------------------------------------------- + This field determines the lowest message number in the index file. + The value for this field is one (1) when a message area is first + created. By using this field, a message area can be packed (deleted + messages are removed) without renumbering it. If BaseMsgNum contains + 500, the first index record points to message number 500. + + BaseMsgNum has to be taken into account when an application + calculates the next available message number (for creating new + messages) as well as the highest and lowest message number in a + message area. + + --------------------------------------------------------------------- + ????????.JHR Message headers + --------------------------------------------------------------------- + The .JHR file contains none or more Header records. Each record + define one message and contains information about the message and its + text (if any). The Header record is of variable length. The layout of + the Header record follows. + + MessageHeader: + MessageFixedHeader: + ulong Signature; // followed by + ushort Revision; // Revision level of header (1) + ushort ReservedWord; // Reserved for future use + ulong SubfieldLen; // Length of subfields (2) + ulong TimesRead; // Number of times message read + ulong MSGIDcrc; // CRC-32 of MSGID line (3) + ulong REPLYcrc; // CRC-32 of REPLY line (3) + ulong ReplyTo; // This msg is a reply to.. + ulong Reply1st; // First reply to this msg + ulong Replynext; // Next msg in reply chain + ulong DateWritten; // When msg was written + ulong DateReceived; // When msg was read by recipient + ulong DateProcessed;// When msg was processed by tosser/ + // scanner + ulong MessageNumber;// Message number (1-based) + ulong Attribute; // Msg attribute, see "Msg Attributes" + ulong Attribute2; // Reserved for future use + ulong Offset; // Offset of text in ????????.JDT file + ulong TxtLen; // Length of message text + ulong PasswordCRC; // CRC-32 of password to access message + ulong Cost; // Cost of message + end; + SubField1 // Extra fields as defined below + . + . + SubFieldXX + end; + + (1) This field is intended for future revisions of the specifications + to allow the use of a different fixed-length binary message + header. The current revision level is one (1). + + (2) The SubfieldLen field is set to zero (0) if the header does not + have any subfield data. I.e. the length of the binary header is + not included in this field. + + (3) When calculating the CRC-32 of the MSGID and REPLY lines, the + text ^aMSGID: and ^aREPLY: should be removed as well as all + leading and trailing white space characters. + + + The SubField structure is made up of an ID, a length specifier, and + a block of data. Zero or more subfields may follow the fixed-length + binary header. SubFields are not stored in any specific order and + are not terminated by any specific character unless otherwise + specified. + + SubField: + ushort LoID; // Field ID, 0-65535 + ushort HiID; // Reserved for future use + ulong datlen; // Length of buffer that follows + uchar Buffer[datlen]; // DATLEN bytes of data + end; + + --------------------------------------------------------------------- + Defined LoID codes + --------------------------------------------------------------------- + + ID=0, Name=OADDRESS + + A network address. This is used to specify the originating address. + More than one OADDRESS field may exist. DATLEN must not exceed 100 + characters. For a FidoNet-style address, this field must follow the + ZONE:NET/NODE.POINT@DOMAIN format where .POINT is excluded if zero + and @DOMAIN is excluded if unknown. + + + ID=1, Name=DADDRESS + + A network address. This is used to specify the destination address. + More than one DADDRESS field may exist (e.g. carbon copies). DATLEN + must not exceed 100 characters. For a FidoNet-style address, this + field must follow the ZONE:NET/NODE.POINT@DOMAIN format where .POINT + is excluded if zero and @DOMAIN is excluded if unknown. + + + ID=2, Name=SENDERNAME + + The sender (author) of the message. DATLEN must not exceed 100 + characters. + + + ID=3, Name=RECEIVERNAME + + The recipient of the message. DATLEN must not exceed 100 characters. + + + ID=4, Name=MSGID + + Used to store the message identification data. All data not relevant + to the actual ID string, including leading and trailing white space + characters should be removed. DATLEN must not exceed 100 characters. + + + ID=5, Name=REPLYID + + Used to store the message reply data. All data not relevant to the + actual reply string, including leading and trailing white space + characters should be removed. DATLEN must not exceed 100 characters. + + + ID=6, Name=SUBJECT + + The subject of the message. DATLEN must not exceed 100 characters. + Note that this field may not be used for FidoNet-style file attaches + or file requests. + + + ID=7, Name=PID + + Used to store the FTN PID kludge line. Only the actual PID data is + stored and ^aPID: is stripped along with any leading and trailing + white space characters. DATLEN must not exceed 40 characters. + + + ID=8, Name=TRACE + + This is also referred to as ^aVia information in FTNs. It contains + information about a system which the message has travelled through. + The format of the field is where: + + YYYY is the year (1992-9999) + MM is the month (01-12) + DD is the day (01-31) + HH is the hour (00-23) + MM is the minute (00-59) + SS is the second (00-59) + + The timestamp is stored in ASCII (0-9) characters. The network + address is the address of the system. It is expressed in ASCII + notation in the native format of the forwarding system. + + + ID=9, Name=ENCLOSEDFILE + + A file attached to the message. Only one filename may be specified + per subfield. No wildcard characters are allowed. If this subfield + is present in a message header, the ATTRIBUTE must include the + MSG_FILEATTACH bit. + + + ID=10, Name=ENCLOSEDFILEWALIAS + + Identical to ENCLOSEDFILE with the exception that the filename is + followed by a (00H) and an alias filename to be transmited to + the remote system in place of the local name of the file. + + + ID=11, Name=ENCLOSEDFREQ + + A request for one or more files. Only one filemask may be specified + per subfield. If the filemask contains a complete path, it is to be + regarded as an update file request. If this subfield is present in a + message header, the ATTRIBUTE must include the MSG_FILEREQUEST bit. + To indicate that a password is to be transmitted along with the + request, a (00H) character followed by the password is + appended. E.g. SECRET*.* MYPASSWORD. + + + ID=12, Name=ENCLOSEDFILEWCARD + + One or more files attached to the message. Only one filename may be + specified per subfield. Wildcard characters are allowed. If this + subfield is present in a message header, the ATTRIBUTE must include + the MSG_FILEATTACH bit. + + + ID=13, Name=ENCLOSEDINDIRECTFILE + + One or more files attached to the message. The filename points to an + ASCII file with one filename entry per line. If alias filenames are + to be used, they are specified after the actual filename and + separated by a (00H) character, e.g. C:\MYFILE.LZH NEWS. + Wildcard characters are not allowed. + + + ID=1000, Name=EMBINDAT + + Reserved for future use. + + + ID=2000, Name=FTSKLUDGE + + An FTS-compliant "kludge" line not otherwise represented here. All + data not relevant to the actual kludge line, including leading and + trailing white space and ^A (01H) characters should be removed. + DATLEN must not exceed 255 characters. The FTS kludges INTL, TOPT, + and FMPT must never be stored as separate SubFields. Their data must + be extracted and used for the address SubFields. + + + ID=2001, Name=SEENBY2D + + Used to store two-dimensional (net/node) SEEN-BY information often + used in FTN conference environments. Only the actual SEEN-BY data is + stored and ^aSEEN-BY: or SEEN-BY: is stripped along with any leading + and trailing white space characters. + + + ID=2002, Name=PATH2D + + Used to store two-dimensional (net/node) PATH information often used + in FTN conference environments. Only the actual PATH data is stored + and ^aPATH: is stripped along with any leading and trailing white + space characters. + + + ID=2003, Name=FLAGS + + Used to store the FTN FLAGS kludge information. Note that all FLAG + options that have binary representation in the JAM message header + must be removed from the FLAGS string prior to storing it. Only + the actual flags option string is stored and ^aFLAGS is stripped + along with any leading and trailing white space characters. + + + ID=2004, Name=TZUTCINFO + + Time zone information. This subfield consists of four mandatory + bytes and one optional. The first character may be a plus (+) or a + minus (-) character to indicate a location east (plus) or west + (minus) of UTC 0000. The plus character is implied unless the first + character is a minus character. The following four bytes must be + digits in the range zero through nine and indicates the offset in + hours and minutes. E.g. 0100 indicates an offset of one hour east of + UTC. + + --------------------------------------------------------------------- + Message attributes + --------------------------------------------------------------------- + MSG_LOCAL (0x00000001L) // Msg created locally + MSG_INTRANSIT (0x00000002L) // Msg is in-transit + MSG_PRIVATE (0x00000004L) // Private + MSG_READ (0x00000008L) // Read by addressee + MSG_SENT (0x00000010L) // Sent to remote + MSG_KILLSENT (0x00000020L) // Kill when sent + MSG_ARCHIVESENT (0x00000040L) // Archive when sent + MSG_HOLD (0x00000080L) // Hold for pick-up + MSG_CRASH (0x00000100L) // Crash + MSG_IMMEDIATE (0x00000200L) // Send Msg now, ignore restrictions + MSG_DIRECT (0x00000400L) // Send directly to destination + MSG_GATE (0x00000800L) // Send via gateway + MSG_FILEREQUEST (0x00001000L) // File request + MSG_FILEATTACH (0x00002000L) // File(s) attached to Msg + MSG_TRUNCFILE (0x00004000L) // Truncate file(s) when sent + MSG_KILLFILE (0x00008000L) // Delete file(s) when sent + MSG_RECEIPTREQ (0x00010000L) // Return receipt requested + MSG_CONFIRMREQ (0x00020000L) // Confirmation receipt requested + MSG_ORPHAN (0x00040000L) // Unknown destination + MSG_ENCRYPT (0x00080000L) // Msg text is encrypted (1) + MSG_COMPRESS (0x00100000L) // Msg text is compressed (1) + MSG_ESCAPED (0x00200000L) // Msg text is seven bit ASCII (1) + MSG_FPU (0x00400000L) // Force pickup + MSG_TYPELOCAL (0x00800000L) // Msg is for local use only + MSG_TYPEECHO (0x01000000L) // Msg is for conference distribution + MSG_TYPENET (0x02000000L) // Msg is direct network mail + MSG_NODISP (0x20000000L) // Msg may not be displayed to user + MSG_LOCKED (0x40000000L) // Msg is locked, no editing possible + MSG_DELETED (0x80000000L) // Msg is deleted + + (1) This revision of JAM does not include compression, encryption, or + escaping. The bits are reserved for future use. + + ===================================================================== + ????????.JDT Message text + --------------------------------------------------------------------- + The .JDT file contains the text of messages. The text is stored as an + stream of seven or eight bit ASCII data. Allowed characters in the + text are 00H through ffH unless the header ATTRIBUTE field has the + MSG_ESCAPED bit enabled, in which case the legal range of data is 20H + through 7eH. + + An escaped character is stored as \ where is the two digit + hexadecimal ASCII value of the character. A single \ is stored as \\ + or \5C. The case of the hexadecimal ASCII value is irrelevant, i.e. + 5c is treated as 5C. + + ===================================================================== + ????????.JDX Message index + --------------------------------------------------------------------- + The .JDX file is used to quickly locate messages for any given user + name or to locate a message with a specific number. Each record in + the file consists of two ulongs. The first ulong holds the CRC-32 of + the recipient's name (lowercase), the second ulong holds the + physical offset of the message header in the .JHR (header) file. + + The record number (+BaseMsgNum) within the .JDX file determines a + message's number. + + If both ulongs are -1 (ffffffffH), there is no corresponding message + header. + + ===================================================================== + ????????.JLR Lastread storage + --------------------------------------------------------------------- + The .JLR file is used to maintain a user's position within a message + area. The layout of the "lastread" record follows. One record per + user is required. + + LastRead: + ulong UserCRC; // CRC-32 of user name (lowercase) (1) + ulong UserID; // Unique UserID + ulong LastReadMsg; // Last read message number + ulong HighReadMsg; // Highest read message number + end; + + (1) The functions to convert a string to lowercase characters that + are provided in the API will only convert characters A-Z (into + a-z). It is required that this convention is followed by all + applications. + + The UserID field is a unique number for each user. If the "lastread" + record is deleted, UserCRC and UserID are both set to -1 + (ffffffffH). An application may not depend on any specific order in + the .JLR file. A user's "lastread" record may appear anywhere in the + file and must be searched for when retrieving it and when storing an + updated record. + + ===================================================================== + Updating message headers + --------------------------------------------------------------------- + If a header record grows after is has been retrieved from the .JHR + file, it must be appended to the end of the .JHR file since it would + overwrite the following header otherwise. The .JDX file must be + properly updated to indicate the new location of the header record. + The old header record must be changed to indicate that it has been + deleted by setting the MSG_DELETED bit in the Attribute field and the + TextLen field to zero (to prevent a maintenance program from removing + the message text that is now pointed to by another header). + + ===================================================================== + Message base sharing and locking + --------------------------------------------------------------------- + To allow several programs to access the message base at any given + time, region locking is used to protect the message base from being + corrupted during updates. + + When an application needs to write to any of the message base files, + it must first attempt to lock the first byte of the .JHR (header) + file. If the lock call fails, the application must either fail or + attempt to lock the file again. The message base files may under no + circumstances be updated if the application cannot successfully lock + the .JHR file. + + Note that data acquired (read) from the message base may not be used + when writing data to the message base, unless the application has + maintained a lock of the message base from the time the data was + acquired or the MODCOUNTER field is the same as when the data was + acquired. + + The application must open the files in shareable (DENYNONE) read/ + write or readonly mode. The only exception to this is an application + that requires exclusive access to the message base, such as a message + base maintenance utility, it should open the files in non-shareable + (DENYALL) read/write mode. + + ===================================================================== + Reply threads and linking + --------------------------------------------------------------------- + JAM introduces a new reply link pointer, not commonly used today. + This section is an attempt to describe how reply threads, reply + linking, and this new reply link pointer is implemented in JAM. + + One of the major differences is that reply threads in JAM are not + based on similar or identical subjects of messages since this method + does not allow for proper reply threads. + + The method used in JAM is based on the immediate relation between any + given message and direct replies to it. This is supported by many + message editors by using the MSGID and REPLY FTS kludge fields. These + are common, although expressed differently, in messages not based on + FidoNet technology, such as RFC-822. The obvious advantages include + allowing a program to easily find the original message to a reply, + and to find all replies to any given message. + + The reply thread information consists of three fields: ReplyTo, + Reply1st, and ReplyNext. The reason for three fields, as opposed to + just two, is that with two fields, it is only possible to keep track + of the original message of a reply (which is sufficient) and one + reply to any given message (which is not sufficient). With three + fields, it is possible to maintain a thread of any number of replies + to any given message. + + In the description of the different fields below, the following + messages and message numbers will be referred to: + + 1 -> 2 -> 4 -> 5 + : : + : +--> 8 + : + +--> 3 -> 7 + : + +--> 6 + + Message number two, three, and six are replies to message number one. + Message number four and eight are replies to message number two. + Message number seven is a reply to message number three. + Message number five is a reply to message number four. + + --------------------------------------------------------------------- + ReplyTo + --------------------------------------------------------------------- + This field holds the number of the message that this message is a + reply to. In the example above, the ReplyTo field would contain the + following values: + + Message number one would contain zero; message number two, three, and + six, would contain one; message number four and eight would contain + two; message number seven would contain three, and message number + five would contain four. + + --------------------------------------------------------------------- + Reply1st + --------------------------------------------------------------------- + This field holds the number of the first message that is a reply to + this message. In the example above, the Reply1st field would contain + the following values: + + Message number one would contain two, message number three would + contain seven, and message number four would contain five. All other + messages would contain zero. + + --------------------------------------------------------------------- + ReplyNext + --------------------------------------------------------------------- + This field is used to create the actual message thread or chain. In + the event that there is more than one reply to any given message, it + is necessary to maintain a thread of all the replies; this is due to + the fact that the original message can only hold information about + the first reply (the Reply1st field) to it. + + The first reply (which the original message's Reply1st field holds), + has its ReplyNext field pointing to the second reply, the second + reply's ReplyNext field poinst to the third reply, and so on. + + In the example above, the ReplyNext field would contain the following + values: + + Message number two would contain three, message number three would + contain six, and message number four would contain eight. All other + messages would contain zero. + + ===================================================================== + Contacts + --------------------------------------------------------------------- + Joaquim Homrighausen Telefax: +352 316 702 + 389, route d'Arlon Modem: +352 316 702 + L-8011 Strassen eMail: 2:270/17@fidonet + Luxembourg joho@abs.lu + + Andrew Milner Telefax: +352 251 621 + 9a, Boulevard Joseph II Modem: +352 251 621 + L-1840 Belair eMail: 2:270/18@fidonet + Luxembourg andrew@fido.lu + + Mats Wallin Telefax: +46 8 6453285 + F”rskottsv„gen 11 Modem: +46 8 6453882 + S-126 44 H„gersten eMail: 2:201/329@fidonet + Sweden mw@fido.lu + Go Back + + + + diff --git a/html/misc/outbound.html b/html/misc/outbound.html index 4a350c05..2ea29459 100644 --- a/html/misc/outbound.html +++ b/html/misc/outbound.html @@ -1,114 +1,114 @@ - - - - - - - - -
Binkley style outbound with MBSE BBS. - - - --- - - + + + + + + + + +Last update 02-Feb-2001
-
- -
Binkly style outbound documentation for MBSE BBS.
--The MBSE BBS outbound directory structure is BinkleyTerm compatible, with -domains and point subdirectories (full 5d). There are separate "protected" and -"unknown" inbound directories for incoming sessions. Files received during -outbound sessions are always placed in the "protected" inbound directory. Only -the "protected" inbound directory is processed automatic. -
- -
-Note that this is a very simple document and that it is not even finished. -
-
-.pol Poll flag, is handled as crash immediate, the length is always 0 bytes. - - Flow files are files with the full pathnames to the files to send - on disk. Names are translated by MBSE BBS to full DOS filenames and - paths depending on your setup. - If you use it then it is importand that you think about the directory - structure to use. See also the documentation about the setup of the - ftp server - The filenames may be prepended with a special character: - # = Truncate file after sent. - - or ^ = Kill file after sent. - @ = Leave file after sent, this is the default. - -.flo Normal flow file (contains complete filenames to send). -.clo Crash flow file. -.hlo Hold flow file. -.ilo Immediate flow file, overrides CM flag. - - The following are .pkt files, during the mail session they will be - renamed to nnnnnnnn.pkt with an unique name and added to the spool - file. Messages can allways be added to the outbound as long as the - node isn't locked. - -.out Normal .pkt file. -.cut Crash .pkt file. -.hut Hold .pkt file. -.iut Immediate .pkt file. - - It seems that these are subdirectories used by ifpack during packing - of mail. These are used for the news/e-mail gate. - -.opk -.cpk -.hpk -.ipk - - -.req Request file. Contains filenames in ascii with <cr><lf>. - -.su0 Arcmail bundles, the last digit may be any digit or letter. -.mo0 -.tu0 -.we0 -.th0 -.fr0 -.sa0 - -.sts Node status file created by mbcico. These are data files containing - three values: - 1. 'time', this is the last call attempt time (in time_t format). - 2. 'retries', is the number of retries to try to connect that node. This - field is zeroed when the call succeeds or when that node calls in. - It is also zeroed when a new poll is created. Currently, mbcico stops - calling a node if the counter is higher then 30. - 3. 'code', is the return code of the last attempt. - 0 - Successfull call - 1 - No dialout port available - 2 - No CONNECT or TCP connect failed - 3 - Could not reset the modem - 4 - System is locked - 5 - Retry time not reached? - 6 - Fatal error in nodelist lookup - 7 - Call prohibited by config options - 8 - Phone number unavailable - 9 - No free matching port - 10 - Unused - 11..29 - Session (handshake) errors. - This file is not compatible with the .sts files created by ifcico.- --.spl Spool file, created by mbcico. - -.bsy Busy file, for locking nodes. The 'pid' of the process who locked that - node is inserted into this file. All programs of the MBSE BBS package - (and ifcico package) check if the pid exists if a .bsy file is found. - If there is no pid found, the lock is a stale lock and is removed. - -- --Go Back -
Binkley style outbound with MBSE BBS. + + + +++ + + diff --git a/html/misc/semafore.html b/html/misc/semafore.html index edf1a0ca..b4145f44 100644 --- a/html/misc/semafore.html +++ b/html/misc/semafore.html @@ -1,63 +1,63 @@ - - - - - - - - -Last update 02-Feb-2001
+
+ +
Binkly style outbound documentation for MBSE BBS.
++The MBSE BBS outbound directory structure is BinkleyTerm compatible, with +domains and point subdirectories (full 5d). There are separate "protected" and +"unknown" inbound directories for incoming sessions. Files received during +outbound sessions are always placed in the "protected" inbound directory. Only +the "protected" inbound directory is processed automatic. +
+ +
+Note that this is a very simple document and that it is not even finished. +
+
+.pol Poll flag, is handled as crash immediate, the length is always 0 bytes. + + Flow files are files with the full pathnames to the files to send + on disk. Names are translated by MBSE BBS to full DOS filenames and + paths depending on your setup. + If you use it then it is importand that you think about the directory + structure to use. See also the documentation about the setup of the + ftp server + The filenames may be prepended with a special character: + # = Truncate file after sent. + - or ^ = Kill file after sent. + @ = Leave file after sent, this is the default. + +.flo Normal flow file (contains complete filenames to send). +.clo Crash flow file. +.hlo Hold flow file. +.ilo Immediate flow file, overrides CM flag. + + The following are .pkt files, during the mail session they will be + renamed to nnnnnnnn.pkt with an unique name and added to the spool + file. Messages can allways be added to the outbound as long as the + node isn't locked. + +.out Normal .pkt file. +.cut Crash .pkt file. +.hut Hold .pkt file. +.iut Immediate .pkt file. + + It seems that these are subdirectories used by ifpack during packing + of mail. These are used for the news/e-mail gate. + +.opk +.cpk +.hpk +.ipk + + +.req Request file. Contains filenames in ascii with <cr><lf>. + +.su0 Arcmail bundles, the last digit may be any digit or letter. +.mo0 +.tu0 +.we0 +.th0 +.fr0 +.sa0 + +.sts Node status file created by mbcico. These are data files containing + three values: + 1. 'time', this is the last call attempt time (in time_t format). + 2. 'retries', is the number of retries to try to connect that node. This + field is zeroed when the call succeeds or when that node calls in. + It is also zeroed when a new poll is created. Currently, mbcico stops + calling a node if the counter is higher then 30. + 3. 'code', is the return code of the last attempt. + 0 - Successfull call + 1 - No dialout port available + 2 - No CONNECT or TCP connect failed + 3 - Could not reset the modem + 4 - System is locked + 5 - Retry time not reached? + 6 - Fatal error in nodelist lookup + 7 - Call prohibited by config options + 8 - Phone number unavailable + 9 - No free matching port + 10 - Unused + 11..29 - Session (handshake) errors. + This file is not compatible with the .sts files created by ifcico.+ ++.spl Spool file, created by mbcico. + +.bsy Busy file, for locking nodes. The 'pid' of the process who locked that + node is inserted into this file. All programs of the MBSE BBS package + (and ifcico package) check if the pid exists if a .bsy file is found. + If there is no pid found, the lock is a stale lock and is removed. + ++ ++Go Back +
Semafore files with MBSE BBS. - - - --- - - + + + + + + + + +Last update 27-jul-2001
-
- -
Semafore files with MBSE BBS.
- -The directory $MBSE_ROOT/sema is the hardcoded semafore directory where all -semafore's must be created, tested and removed. When the system is booting, -the init script will erase all semafore's just before the BBS is started. -This description is valid from MBSE BBS v0.33.18 and newer. - --zmh Purpose: to mark the state of Zone Mail Hour. - Created by "mbtask" at the start of Zone Mail Hour. - Removed by "mbtask" at the end of Zone Mail Hour. - -upsalarm Purpose: Signal that the system is running on battery power. - Created and removed by UPS software. - Checked by mbtask to suspend processing. - Checked by mbfido to stop processing. - -upsdown Purpose: Signal that the system will go down on low battery. - Created and removed by UPS software. - Checked by mbtask to go down. - Checked by several scripts and "mbstat wait". - -newnews Purpose: Signal that there are new articles on the news server. - Checked by mbtask to start news processing. - Removed by mbtask as soon as it is detected. - -mailout Purpose: Signal that there is mail posted in the message base. - Checked by mbtask to start scan the message base. - Removed by mbtask as soon as it is detected. - -mailin Purpose: Signal that there is new mail in the inbound. - Checked by mbtask to start the tosser. - Removed by mbtask as soon as it is detected. - -scanout Purpose: Signal that the outbound must be rescanned. - Checked by mbtask to check the outbound. - Removed by mbtask as soon as it is detected. - -mbtask.last Purpose: A timestamp created and touched by "mbtask" every - minute so you can check it is running. -- -Go Back -
Semafore files with MBSE BBS. + + + +++ + + diff --git a/html/misc/usleep.html b/html/misc/usleep.html index fc64d73c..37159285 100644 --- a/html/misc/usleep.html +++ b/html/misc/usleep.html @@ -1,61 +1,61 @@ - - -Last update 27-jul-2001
+
+ +
Semafore files with MBSE BBS.
+ +The directory $MBSE_ROOT/sema is the hardcoded semafore directory where all +semafore's must be created, tested and removed. When the system is booting, +the init script will erase all semafore's just before the BBS is started. +This description is valid from MBSE BBS v0.33.18 and newer. + ++zmh Purpose: to mark the state of Zone Mail Hour. + Created by "mbtask" at the start of Zone Mail Hour. + Removed by "mbtask" at the end of Zone Mail Hour. + +upsalarm Purpose: Signal that the system is running on battery power. + Created and removed by UPS software. + Checked by mbtask to suspend processing. + Checked by mbfido to stop processing. + +upsdown Purpose: Signal that the system will go down on low battery. + Created and removed by UPS software. + Checked by mbtask to go down. + Checked by several scripts and "mbstat wait". + +newnews Purpose: Signal that there are new articles on the news server. + Checked by mbtask to start news processing. + Removed by mbtask as soon as it is detected. + +mailout Purpose: Signal that there is mail posted in the message base. + Checked by mbtask to start scan the message base. + Removed by mbtask as soon as it is detected. + +mailin Purpose: Signal that there is new mail in the inbound. + Checked by mbtask to start the tosser. + Removed by mbtask as soon as it is detected. + +scanout Purpose: Signal that the outbound must be rescanned. + Checked by mbtask to check the outbound. + Removed by mbtask as soon as it is detected. + +mbtask.last Purpose: A timestamp created and touched by "mbtask" every + minute so you can check it is running. ++ +Go Back +
System load and the usleep() call. - - - - -- usleep.doc - - -At some time when developping MBSE BBS I decided that background utilities -did't need full speed to do their jobs. BBS utilities under DOS needed -to run as fast as possible because you needed to bring the bbs down to run -these programs and users couldn't login during that time. - -Starting with mball, the allfiles creator, I inserted code that does usleep(1) -after each 5 processed files. The 1 microsecond is not really the time the -program pauses, it's probably a lot longer. I think this depends on the -hardware type, (Intel, Sparc, Alpha etc) how long Linux will really suspends -executing the utility. - -The program speed downgrade at the development machine that mball needed was -3 times the original exection time, while system loading stayed under 30%. -At that time the development machine is an 486DX2-66 with a Seagate ST32151N -SCSI harddisk. - -The extra usleep code is only active if you run these utils with the -quiet -switch and when this is set in mbsetup. See menu 1->5. -With this switch, the program is mostly run by cron. If you onmit -this switch, this is probably when you start the program manually, it will -then always run at full speed, no matter what the setting in mbsetup is. - -If you have a fast system or don't care that the performance of your system -drops because of background processing, you can turn this future off with -mbsetup in the global section. (menu 1->5). - -Remember, if you have a PII-400 MMX or so with IDE disks, you may still have -performance problems and need to set that switch to yes. There is only one -way to find out if you need it. - -Well, actually, I tested this on a Dell Latitude PII-266, setting the switch to -yes gave better performance then no. Why? The CPU has more time for the slow -IDE disk. With the slow switch on programs runs even faster then with the switch -off. - -Michiel. - -- -Go Back - - - - + + +
System load and the usleep() call. + + + + ++ usleep.doc + + +At some time when developping MBSE BBS I decided that background utilities +did't need full speed to do their jobs. BBS utilities under DOS needed +to run as fast as possible because you needed to bring the bbs down to run +these programs and users couldn't login during that time. + +Starting with mball, the allfiles creator, I inserted code that does usleep(1) +after each 5 processed files. The 1 microsecond is not really the time the +program pauses, it's probably a lot longer. I think this depends on the +hardware type, (Intel, Sparc, Alpha etc) how long Linux will really suspends +executing the utility. + +The program speed downgrade at the development machine that mball needed was +3 times the original exection time, while system loading stayed under 30%. +At that time the development machine is an 486DX2-66 with a Seagate ST32151N +SCSI harddisk. + +The extra usleep code is only active if you run these utils with the -quiet +switch and when this is set in mbsetup. See menu 1->5. +With this switch, the program is mostly run by cron. If you onmit +this switch, this is probably when you start the program manually, it will +then always run at full speed, no matter what the setting in mbsetup is. + +If you have a fast system or don't care that the performance of your system +drops because of background processing, you can turn this future off with +mbsetup in the global section. (menu 1->5). + +Remember, if you have a PII-400 MMX or so with IDE disks, you may still have +performance problems and need to set that switch to yes. There is only one +way to find out if you need it. + +Well, actually, I tested this on a Dell Latitude PII-266, setting the switch to +yes gave better performance then no. Why? The CPU has more time for the slow +IDE disk. With the slow switch on programs runs even faster then with the switch +off. + +Michiel. + ++ +Go Back + + + + diff --git a/html/nodelist.html b/html/nodelist.html index 07dff033..bda77168 100644 --- a/html/nodelist.html +++ b/html/nodelist.html @@ -1,131 +1,131 @@ - - - - - - - - -
Nodelist and Nidediff processing. - - - --- - - + + + + + + + + +Last update 07-Jun-2001
-
- -
Nodelist and Nodediff processing
-- -
Introduction
--A received a lot of questions about nodelist and nodediff processing, so -I will describe here the setup of the development system for the Fidonet -nodelist. First of all, it is very important that you -use three separate directories to do the nodelist processing. This is to -make sure that all stages are independent of each other, and if something -goes wrong, you still have a working system. The three directories are:
--
-In short the steps to process the nodediff's is as follows: -- /var/spool/mbse/ftp/pub/fido/nodelist, this is the public -download area, the received diff's are stored here as well as the final -compressed nodelists for download. -
- /opt/mbse/tmp/nlwork, this is the working directory -to apply diffs to the previous nodelist. This directory should allways -contain the latest uncompressed nodelist. -
- /var/spool/mbse/nodelist, this is the systems nodelist -directory defined in mbsetup, menu 1.3.4 -
-
-Next I will describe these steps in detail. -- Receive the nodediff and store it for download. -
- Apply the diff to the latest nodelist. -
- Hatch the new compressed nodelist. -
- Store the new nodelist for download. -
- Unpack the new nodelist in the nodelist compiler directory. -
- Set the compile semafore. -
- Compile the nodelists. -
- -
The download area
--First define the download area for the bbs. In my case, this is area 20. From -here users can download the nodelists and nodediffs, files to the downlinks -are send from here. Below is the example of my system. -
-
-
- -
The NODEDIFF tic area
--From your uplinks you usually receive NODEDIFF files. Create a tic area for -that purpose. I have keep# set to 5, this means the last 5 diff's are stored -in the download directory, older ones are removed. Now you can receive -nodediff files, store them for download, and send them to other nodes. -
-
-
- -
Apply the diff
--We do this with the tic magic processor. In this example -I have NODELIST.007 in the /opt/mbse/tmp/nlwork directory. -Note that this filename is uppercase, they are usually stored and distributed -as uppercase names. As I receive the diff files as arc, the filemask on -my system is nodediff.a##. -This means that the file with the name nodediff.a14 in the area NODEDIFF -is a match. The command that is executed expands to -mbdiff /opt/mbse/tmp/nlwork/NODELIST /var/spool/mbse/ftp/pub/fido/nodelist/nodediff.a14 -quiet if the received nodediff is -nodediff.a14.
The mbdiff program applies -nodediff.a14 against NODELIST.007 in the -/opt/mbse/tmp/nlwork directory. If this is successfull, a -new NODELIST.014 is created there, a compressed -nodelist.z14 is created there and NODELIST.007 is -removed.
If this operation fails, only NODELIST.007 will stay -in that directory. -Because the ARC program for Linux isn't good for files, I -left the Arc files command empty in the archiver setup. As a fallback the -mbdiff program uses zip to create the compressed archive.
-If creating the new nodelist fails for some reason, a missed diff or so, -the whole processing stops here. The previous nodelist is still here and -you can manually correct the situation. So, if you missed a diff, see that -you get it and manually give the mbdiff commands as user -mbse until you are up to date. Or, place the latest -uncompressed nodelist in the directory /opt/mbse/tmp/nlwork. --
-
- -
Processing the new nodelist
--Now that we have created the new compressed nodelist, it has to go somewhere. -The file nodelist.z14 is in the directory -/opt/mbse/tmp/nlwork. The example for the hatch manager -is shown below. The hatch manager runs automatic with the comand -mbfido tic. This setup will hatch the new nodelist in the -tic area NODELIST The two screens below show the tic and -hatch setup for this area. -
-
-
-
-Now that we have hatched the new nodelist and stored in in the download area, -and maybe send some copies to downlinks, we have to feed it to the nodelist -compiler for our own system. We use a tic magic command to do -that. In this case we unpack the nodelist in /var/spool/mbse/nodelist -and set the compile semafore so that the mbindex - will compile the new nodelist. Don't be afraid that the unpacked -nodelists will acumulate in the nodelist directory, mbindex -will handle that, only the latest two nodelists are kept there. The -mbindex program is started by the taskmanager -mbtask. -
-
-
- -
Go Back -
Nodelist and Nidediff processing. + + + +++ + + diff --git a/html/postfix.html b/html/postfix.html index 5331ecb7..d93aff3c 100644 --- a/html/postfix.html +++ b/html/postfix.html @@ -1,160 +1,160 @@ - - - - - - - - -Last update 07-Jun-2001
+
+ +
Nodelist and Nodediff processing
++ +
Introduction
++A received a lot of questions about nodelist and nodediff processing, so +I will describe here the setup of the development system for the Fidonet +nodelist. First of all, it is very important that you +use three separate directories to do the nodelist processing. This is to +make sure that all stages are independent of each other, and if something +goes wrong, you still have a working system. The three directories are:
++
+In short the steps to process the nodediff's is as follows: +- /var/spool/mbse/ftp/pub/fido/nodelist, this is the public +download area, the received diff's are stored here as well as the final +compressed nodelists for download. +
- /opt/mbse/tmp/nlwork, this is the working directory +to apply diffs to the previous nodelist. This directory should allways +contain the latest uncompressed nodelist. +
- /var/spool/mbse/nodelist, this is the systems nodelist +directory defined in mbsetup, menu 1.3.4 +
+
+Next I will describe these steps in detail. +- Receive the nodediff and store it for download. +
- Apply the diff to the latest nodelist. +
- Hatch the new compressed nodelist. +
- Store the new nodelist for download. +
- Unpack the new nodelist in the nodelist compiler directory. +
- Set the compile semafore. +
- Compile the nodelists. +
+ +
The download area
++First define the download area for the bbs. In my case, this is area 20. From +here users can download the nodelists and nodediffs, files to the downlinks +are send from here. Below is the example of my system. +
+
+
+ +
The NODEDIFF tic area
++From your uplinks you usually receive NODEDIFF files. Create a tic area for +that purpose. I have keep# set to 5, this means the last 5 diff's are stored +in the download directory, older ones are removed. Now you can receive +nodediff files, store them for download, and send them to other nodes. +
+
+
+ +
Apply the diff
++We do this with the tic magic processor. In this example +I have NODELIST.007 in the /opt/mbse/tmp/nlwork directory. +Note that this filename is uppercase, they are usually stored and distributed +as uppercase names. As I receive the diff files as arc, the filemask on +my system is nodediff.a##. +This means that the file with the name nodediff.a14 in the area NODEDIFF +is a match. The command that is executed expands to +mbdiff /opt/mbse/tmp/nlwork/NODELIST /var/spool/mbse/ftp/pub/fido/nodelist/nodediff.a14 -quiet if the received nodediff is +nodediff.a14.
The mbdiff program applies +nodediff.a14 against NODELIST.007 in the +/opt/mbse/tmp/nlwork directory. If this is successfull, a +new NODELIST.014 is created there, a compressed +nodelist.z14 is created there and NODELIST.007 is +removed.
If this operation fails, only NODELIST.007 will stay +in that directory. +Because the ARC program for Linux isn't good for files, I +left the Arc files command empty in the archiver setup. As a fallback the +mbdiff program uses zip to create the compressed archive.
+If creating the new nodelist fails for some reason, a missed diff or so, +the whole processing stops here. The previous nodelist is still here and +you can manually correct the situation. So, if you missed a diff, see that +you get it and manually give the mbdiff commands as user +mbse until you are up to date. Or, place the latest +uncompressed nodelist in the directory /opt/mbse/tmp/nlwork. ++
+
+ +
Processing the new nodelist
++Now that we have created the new compressed nodelist, it has to go somewhere. +The file nodelist.z14 is in the directory +/opt/mbse/tmp/nlwork. The example for the hatch manager +is shown below. The hatch manager runs automatic with the comand +mbfido tic. This setup will hatch the new nodelist in the +tic area NODELIST The two screens below show the tic and +hatch setup for this area. +
+
+
+
+Now that we have hatched the new nodelist and stored in in the download area, +and maybe send some copies to downlinks, we have to feed it to the nodelist +compiler for our own system. We use a tic magic command to do +that. In this case we unpack the nodelist in /var/spool/mbse/nodelist +and set the compile semafore so that the mbindex + will compile the new nodelist. Don't be afraid that the unpacked +nodelists will acumulate in the nodelist directory, mbindex +will handle that, only the latest two nodelists are kept there. The +mbindex program is started by the taskmanager +mbtask. +
+
+
+ +
Go Back +
MBSE BBS - Internet Gateway - Postfix setup. - - - --- - - + + + + + + + + +Last update 25-Aug-2001
-
- -
MBSE BBS - Internet Gateway - Postfix setup.
--Of course you need to make all these changes as root. -Add the mbmail program as service to the postfix system by -adding two lines to master.cf. -
--# -# Postfix master process configuration file. Each line describes how -# a mailer component program should be run. The fields that make up -# each line are described below. A "-" field value requests that a -# default value be used for that field. -# -# Service: any name that is valid for the specified transport type -# (the next field). With INET transports, a service is specified as -# host:port. The host part (and colon) may be omitted. Either host -# or port may be given in symbolic form or in numeric form. Examples -# for the SMTP server: localhost:smtp receives mail via the loopback -# interface only; 10025 receives mail on port 10025. -# -# Transport type: "inet" for Internet sockets, "unix" for UNIX-domain -# sockets, "fifo" for named pipes. -# -# Private: whether or not access is restricted to the mail system. -# Default is private service. Internet (inet) sockets can't be private. -# -# Unprivileged: whether the service runs with root privileges or as -# the owner of the Postfix system (the owner name is controlled by the -# mail_owner configuration variable in the main.cf file). -# -# Chroot: whether or not the service runs chrooted to the mail queue -# directory (pathname is controlled by the queue_directory configuration -# variable in the main.cf file). Presently, all Postfix daemons can run -# chrooted, except for the pipe and local daemons. The files in the -# examples/chroot-setup subdirectory describe how to set up a Postfix -# chroot environment for your type of machine. -# -# Wakeup time: automatically wake up the named service after the -# specified number of seconds. Specify 0 for no wakeup. Presently, -# only the local pickup and queue manager daemons need a wakeup timer. -# -# Max procs: the maximum number of processes that may execute this -# service simultaneously. Default is to use a globally configurable -# limit (the default_process_limit configuration parameter in main.cf). -# -# Command + args: the command to be executed. The command name is -# relative to the Postfix program directory (pathname is controlled by -# the program_directory configuration variable). Adding one or more -# -v options turns on verbose logging for that service; adding a -D -# option enables symbolic debugging (see the debugger_command variable -# in the main.cf configuration file). -# -# In order to use the "uucp" message tranport below, set up entries -# in the transport table. -# -# In order to use the "cyrus" message transport below, configure it -# in main.cf as the mailbox_transport. -# -# SPECIFY ONLY PROGRAMS THAT ARE WRITTEN TO RUN AS POSTFIX DAEMONS. -# ALL DAEMONS SPECIFIED HERE MUST SPEAK A POSTFIX-INTERNAL PROTOCOL. -# -# ========================================================================== -# service type private unpriv chroot wakeup maxproc command + args -# (yes) (yes) (yes) (never) (50) -# ========================================================================== -smtp inet n - n - - smtpd -pickup fifo n n n 60 1 pickup -cleanup unix - - n - 0 cleanup -qmgr fifo n - n 300 1 qmgr -rewrite unix - - n - - trivial-rewrite -bounce unix - - n - 0 bounce -defer unix - - n - 0 bounce -smtp unix - - n - - smtp -showq unix n - n - - showq -error unix - - n - - error -local unix - n n - - local -cyrus unix - n n - - pipe - flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} -uucp unix - n n - - pipe - flags=F user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) -ifmail unix - n n - 1 pipe - flags=F user=fido argv=/usr/local/bin/ifmail -r $nexthop ($recipient) -mbmail unix - n n - 1 pipe - flags=F user=mbse argv=/opt/mbse/bin/mbmail ($recipient) -bsmtp unix - n n - - pipe - flags=F. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient --
-In main.cf change or add the line:
--relay_domains = $mydestination, f2802.n280.z2.fidonet.org --The fidonet address will be your fidonet address of course. If you have more -fidonet aka's, add them as well seperated with commas. -- -Next you need to add mbmail to the -transport file. -
--# /etc/postfix/transport -# -# execute "postmap /etc/postfix/transport" after changing this file -# -# Local destinations -# -seaport.mbse.nl local: -www.mbse.nl local: -news.mbse.nl local: -# -# Fidonet mailers at this machine. Test on several strings to make sure -# it will catches everything. -# -z1 mbmail:f2802.n280.z2.fidonet -.z1 mbmail:f2802.n280.z2.fidonet -z2 mbmail:f2802.n280.z2.fidonet -.z2 mbmail:f2802.n280.z2.fidonet -z3 mbmail:f2802.n280.z2.fidonet -.z3 mbmail:f2802.n280.z2.fidonet -z4 mbmail:f2802.n280.z2.fidonet -.z4 mbmail:f2802.n280.z2.fidonet -z5 mbmail:f2802.n280.z2.fidonet -.z5 mbmail:f2802.n280.z2.fidonet -z6 mbmail:f2802.n280.z2.fidonet -.z6 mbmail:f2802.n280.z2.fidonet -fidonet mbmail:f2802.n280.z2.fidonet -.fidonet mbmail:f2802.n280.z2.fidonet -fidonet.org mbmail:f2802.n280.z2.fidonet -.fidonet.org mbmail:f2802.n280.z2.fidonet --
-Don't forget to run postmap /etc/postfix/transport. Now all -files are changed, run postfix reload to activate the -changes. - -- -
-Go back -
Go to main -
MBSE BBS - Internet Gateway - Postfix setup. + + + +++ + + diff --git a/html/programs/mbfile.html b/html/programs/mbfile.html index 1afc6dfb..9365a430 100644 --- a/html/programs/mbfile.html +++ b/html/programs/mbfile.html @@ -1,93 +1,97 @@ - - - - - - - - -Last update 25-Aug-2001
+
+ +
MBSE BBS - Internet Gateway - Postfix setup.
++Of course you need to make all these changes as root. +Add the mbmail program as service to the postfix system by +adding two lines to master.cf. +
++# +# Postfix master process configuration file. Each line describes how +# a mailer component program should be run. The fields that make up +# each line are described below. A "-" field value requests that a +# default value be used for that field. +# +# Service: any name that is valid for the specified transport type +# (the next field). With INET transports, a service is specified as +# host:port. The host part (and colon) may be omitted. Either host +# or port may be given in symbolic form or in numeric form. Examples +# for the SMTP server: localhost:smtp receives mail via the loopback +# interface only; 10025 receives mail on port 10025. +# +# Transport type: "inet" for Internet sockets, "unix" for UNIX-domain +# sockets, "fifo" for named pipes. +# +# Private: whether or not access is restricted to the mail system. +# Default is private service. Internet (inet) sockets can't be private. +# +# Unprivileged: whether the service runs with root privileges or as +# the owner of the Postfix system (the owner name is controlled by the +# mail_owner configuration variable in the main.cf file). +# +# Chroot: whether or not the service runs chrooted to the mail queue +# directory (pathname is controlled by the queue_directory configuration +# variable in the main.cf file). Presently, all Postfix daemons can run +# chrooted, except for the pipe and local daemons. The files in the +# examples/chroot-setup subdirectory describe how to set up a Postfix +# chroot environment for your type of machine. +# +# Wakeup time: automatically wake up the named service after the +# specified number of seconds. Specify 0 for no wakeup. Presently, +# only the local pickup and queue manager daemons need a wakeup timer. +# +# Max procs: the maximum number of processes that may execute this +# service simultaneously. Default is to use a globally configurable +# limit (the default_process_limit configuration parameter in main.cf). +# +# Command + args: the command to be executed. The command name is +# relative to the Postfix program directory (pathname is controlled by +# the program_directory configuration variable). Adding one or more +# -v options turns on verbose logging for that service; adding a -D +# option enables symbolic debugging (see the debugger_command variable +# in the main.cf configuration file). +# +# In order to use the "uucp" message tranport below, set up entries +# in the transport table. +# +# In order to use the "cyrus" message transport below, configure it +# in main.cf as the mailbox_transport. +# +# SPECIFY ONLY PROGRAMS THAT ARE WRITTEN TO RUN AS POSTFIX DAEMONS. +# ALL DAEMONS SPECIFIED HERE MUST SPEAK A POSTFIX-INTERNAL PROTOCOL. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (yes) (never) (50) +# ========================================================================== +smtp inet n - n - - smtpd +pickup fifo n n n 60 1 pickup +cleanup unix - - n - 0 cleanup +qmgr fifo n - n 300 1 qmgr +rewrite unix - - n - - trivial-rewrite +bounce unix - - n - 0 bounce +defer unix - - n - 0 bounce +smtp unix - - n - - smtp +showq unix n - n - - showq +error unix - - n - - error +local unix - n n - - local +cyrus unix - n n - - pipe + flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +uucp unix - n n - - pipe + flags=F user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +ifmail unix - n n - 1 pipe + flags=F user=fido argv=/usr/local/bin/ifmail -r $nexthop ($recipient) +mbmail unix - n n - 1 pipe + flags=F user=mbse argv=/opt/mbse/bin/mbmail ($recipient) +bsmtp unix - n n - - pipe + flags=F. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient ++
+In main.cf change or add the line:
++relay_domains = $mydestination, f2802.n280.z2.fidonet.org ++The fidonet address will be your fidonet address of course. If you have more +fidonet aka's, add them as well seperated with commas. ++ +Next you need to add mbmail to the +transport file. +
++# /etc/postfix/transport +# +# execute "postmap /etc/postfix/transport" after changing this file +# +# Local destinations +# +seaport.mbse.nl local: +www.mbse.nl local: +news.mbse.nl local: +# +# Fidonet mailers at this machine. Test on several strings to make sure +# it will catches everything. +# +z1 mbmail:f2802.n280.z2.fidonet +.z1 mbmail:f2802.n280.z2.fidonet +z2 mbmail:f2802.n280.z2.fidonet +.z2 mbmail:f2802.n280.z2.fidonet +z3 mbmail:f2802.n280.z2.fidonet +.z3 mbmail:f2802.n280.z2.fidonet +z4 mbmail:f2802.n280.z2.fidonet +.z4 mbmail:f2802.n280.z2.fidonet +z5 mbmail:f2802.n280.z2.fidonet +.z5 mbmail:f2802.n280.z2.fidonet +z6 mbmail:f2802.n280.z2.fidonet +.z6 mbmail:f2802.n280.z2.fidonet +fidonet mbmail:f2802.n280.z2.fidonet +.fidonet mbmail:f2802.n280.z2.fidonet +fidonet.org mbmail:f2802.n280.z2.fidonet +.fidonet.org mbmail:f2802.n280.z2.fidonet ++
+Don't forget to run postmap /etc/postfix/transport. Now all +files are changed, run postfix reload to activate the +changes. + ++ +
+Go back +
Go to main +
MBSE BBS Programs - mbfile - File database maintenance program. - - - --- - - + + + + + + + + +Last update 30-Jan-2001
-
- -
mbfile - File database maintenance program.
-- -
Synopsys.
-mbfile [commands] <options>
-
- -
Description.
--mbfile -is the filedatabase maintenance program for mbsebbs. In order to run mbfile you -must have started mbsed, -this is the deamon which controls all bbs activities. -
-The main purpose of mbfile -to do automatic maintenance on the downloadable files on the bbs, such as -removing or moving old files, checking the database and packing the database. -The best way to do the maintenance is to run mbfile -from the crontab. example: -
-30 05 * * * export MBSE_ROOT=/opt/mbse; /opt/mbse/bin/mbfile kill pack check index -quiet --
- -
Environment.
--In order to run the bbs you need to set one global environment variable -$MBSE_ROOT -This variable must point to the root of the bbs directoy structure. The -main configuration file config.data -must exist in the subdirectory ~/etc. -
- -
Commands.
--
mbfile check
-Check the database integrity. All files in the filedatabase must exist on -disk and all files on disk must exist in the filedatabase. There are some -exceptions, files.bbs, files.bak, 00index, index*.html, header, readme and -files that start with a dot. -Of all files the date and time is checked, the size and the crc -value of the file. If there is something wrong, the error is corrected or the -file is removed. If the area is a CD-rom area, the check that files on disk -must exist in the filedatabase is skipped. --
mbfile index
-Create fast filerequest index for the mbcico filerequest -processor. --
mbfile pack
-This command will actualy remove the records of files that are marked for -deletion. If the file is still on disk, it will be removed also. So when -you delete files with mbsetup, they are still in your database and on disk -until you run mbfile pack. --
mbfile kill
-Delete or move files in areas that have the download age -set or the filedate age set. A setting of 0 is ignored. -Areas on CD-rom are always skipped. -If the Move to Area option is set the files are moved to the given area. The -upload date and download date are reset to the current date and time. -So if you set in the destination area aging of 14 days, files will stay -there for 14 days after the move. This is good for automatic "last chance" areas. -
- -
Options.
--
mbfile [command] -quiet
-Quiet mode, no screen output. Use this switch if you run mbfile from the crontab. -- -
Back to index -
Back to Main index -
MBSE BBS Programs - mbfile - File database maintenance program. + + + +++ + + diff --git a/html/routing.html b/html/routing.html index 75a1d088..cd5e4c25 100644 --- a/html/routing.html +++ b/html/routing.html @@ -1,211 +1,211 @@ - - - - - - - - -Last update 22-Oct-2001
++ +
mbfile - File database maintenance program.
++ +
Synopsys.
+mbfile [commands] <options>
+
+ +
Description.
++mbfile +is the filedatabase maintenance program for mbsebbs. In order to run mbfile you +must have started mbsed, +this is the deamon which controls all bbs activities. +
+The main purpose of mbfile +to do automatic maintenance on the downloadable files on the bbs, such as +removing or moving old files, checking the database and packing the database. +The best way to do the maintenance is to run mbfile +from the crontab. example: +
+30 05 * * * export MBSE_ROOT=/opt/mbse; /opt/mbse/bin/mbfile kill pack check index -quiet ++
+ +
Environment.
++In order to run the bbs you need to set one global environment variable +$MBSE_ROOT +This variable must point to the root of the bbs directoy structure. The +main configuration file config.data +must exist in the subdirectory ~/etc. +
+ +
Commands.
++
mbfile check
+Check the database integrity. All files in the filedatabase must exist on +disk and all files on disk must exist in the filedatabase. There are some +exceptions, files.bbs, files.bak, 00index, index*.html, header, readme and +files that start with a dot. +Of all files the date and time is checked, the size and the crc +value of the file. If there is something wrong, the error is corrected or the +file is removed. If the area is a CD-rom area, the check that files on disk +must exist in the filedatabase is skipped. ++
mbfile index
+Create fast filerequest index for the mbcico filerequest +processor. ++
mbfile kill
+Delete or move files in areas that have the download age +set or the filedate age set. A setting of 0 is ignored. +Areas on CD-rom are always skipped. +If the Move to Area option is set the files are moved to the given area. The +upload date and download date are reset to the current date and time. +So if you set in the destination area aging of 14 days, files will stay +there for 14 days after the move. This is good for automatic "last chance" areas. ++
mbfile list
+List all defined file areas, the number of files, the total size of the files +and the primary group. ++
mbfile pack
+This command will actualy remove the records of files that are marked for +deletion. If the file is still on disk, it will be removed also. So when +you delete files with mbsetup, they are still in your database and on disk +until you run mbfile pack. +
+ +
Options.
++
mbfile [command] -quiet
+Quiet mode, no screen output. Use this switch if you run mbfile from the crontab. ++ +
Back to index +
Back to Main index +
Netmail routing behaviour. - - - --- - - + + + + + + + + +Last update 07-Jun-2001
-
- -
MBSE BBS Netmail routing behaviour
- -Introduction
--The mbfido program that is responsible for unpacking, -importing, exporting and routing of netmail has a build in default routing -plan. In general this is quite simple, if we know the destination node or -his uplink, (that node or uplink is in our setup), then we will route via -that node in our setup. If the node or his uplink is not in our setup, then -the nodelist is used and normal fidonet routing is used. This means, if you -are a node, everything goes to your hub, if you are a hub, then mail for -your downlinks will go direct to the downlinks because they are in your setup, -everything else goes to the host. -If you are a host, then your own downlinks will get the mail direct, -the downlinks of the hubs in your net well be routed via the hubs below you. -If it is for a node in your region but outside your net, mail will be routed via -the other hosts in your region. Mail to outside your region will go to the -region coordinators system. -
- -
Tracking and bouncing
--At this moment there is no bouncing of undeliverable mail. I will built this -in, but it will only work inside your own net. I will never include code for -bouncing mail outside your net, because nodelists are always not uptodate. -
- -
Special routing
--What if you need special routing. The solution is simple, add the routing -nodes to your setup and fill in the "route via" field. If you don't have a -session password with that node, leave the password fields blank. This node -will never know that he is in your setup as long as you have the notify -settings for that node switched off. To figure -out such solutions yourself, I have included the flow diagrams for the tracking -module. -
- -
Main tracking routine:
---- +=============================+ - | Trackmail to dest. | - +--------------+--------------+ - | - ++-------------+-------------++ - || rc = GetRoute to dest || (See next diagram). - ++-------------+-------------++ - | - +--------------+--------------+ yes - | rc = R_NOROUTE +-----------------+ - +--------------+--------------+ +-------+--------+ - | no | res: R_NOROUTE | - | +================+ - +--------------+--------------+ yes - | rc = R_UNLISTED +-----------------+ - +--------------+--------------+ +-------+--------+ - | | res: R_UNLISTED| - | +----------------+ - +--------------+--------------+ yes - | rc = R_LOCAL +-----------------+ - +--------------+--------------+ +-------+--------+ - | no | result: R_LOCAL| - | +================+ - +--------------+--------------+ no - | routing node in setup ? +-----------------+ - +--------------+--------------+ +-------+--------+ - | yes | result: rc | - | +================+ - +--------------+--------------+ no - | "Route via" filled in ? +-----------------+ - +--------------+--------------+ +-------+--------+ - | yes | res: R_ROUTE | - | +================+ - +--------------+--------------+ - | Change route to address | - | result = R_ROUTE | - +=============================+ -
-Sub function GetRoute:
--- -- +=============================+ - | GetRoute | - +--------------+--------------+ - | - +--------------+--------------+ - | Add domain name | - +--------------+--------------+ - | - +--------------+--------------+ yes - | Is dest our own address ? +------------------+ - +--------------+--------------+ +--------+-------+ - | no | rc = R_LOCAL | - | +================+ - +--------------+--------------+ yes - | Is dest our point address ? +------------------+ - +--------------+--------------+ +--------+-------+ - | no | rc = R_DIRECT | - | +================+ - +--------------+--------------+ yes (route to boss) - | Are we a point system +------------------+ - +--------------+--------------+ +--------+-------+ - | no | dest is my Boss| - | | res: R_DIRECT | - | +----------------+ - +--------------+--------------+ yes - | Dest. addr. in nodes setup? +------------------+ - +--------------+--------------+ +--------+-------+ - | no | rc = R_DIRECT | - | +================+ - +--------------+--------------+ yes - | Boss of point dest in setup +------------------+ - +--------------+--------------+ +--------+-------+ - | no | rc = R_DIRECT | - | | dest = Boss | - | +================+ - +--------------+--------------+ - | Is node listed and do we | yes - | know his uplink in setup ? +------------------+ - +--------------+--------------+ +--------+-------+ - | no | dest is uplink | - | | rc = R_DIRECT | - | +================+ - +--------------+--------------+ yes - | Are we host in network ? +------------------+ - +--------------+--------------+ +--------+-------+ - | no | Set host addr. | - | +--------+-------+ - | +----------+ - +--------------+--------------+ yes | - | Are we hub in domain ? +------------------+ | - +--------------+--------------+ +--------+-------+ | - | no | Set hub addr. | v - | +--------+-------+ | - | | | - +---------------<-----------------+-----<----+ - | - +--------------+--------------+ - | Set our region number | - +--------------+--------------+ - | - | - +--------------+--------------+ no - | Host address set ? +-----------------------------+ - +--------------+--------------+ | - | yes | - | | - +--------------+--------------+ - | Dest region <> our region | yes | - | or Dest zone <> our zone +------------------+ | - +--------------+--------------+ +--------+-------+ | - | no | Dest to RC | | - | | rc = R_ROUTE | | - | +================+ | - +--------------+--------------+ yes | - | Dest net <> our net +------------------+ | - +--------------+--------------+ +--------+-------+ | - | no | to host destnet| | - | | rc = R_ROUTE | | - | +================+ | - +--------------+--------------+ yes | - | Has node a hub +------------------+ | - +--------------+--------------+ +--------+-------+ | - | yes | to node's hub | | - +------+--------+ | rc = R_ROUTE | | - | dest is direct| +================+ | - | rc = R_ROUTE | | - +===============+ | - | - +------------------------<-------------------+ - +--------------+--------------+ no - | Hub address set ? +-----------------+ - +--------------+--------------+ +-------+--------+ - | yes | via our hub | - | | rc = R_ROUTE | - | +================+ - +--------------+--------------+ yes - | Dest node of our hub addr +-----------------+ - +--------------+--------------+ +-------+--------+ - | no | rc = R_DIRECT | - | +================+ - +------+-------+ - | dest is host | - | rc = R_ROUTE | - +==============+ -
-Go Back -
Netmail routing behaviour. + + + +++ + + diff --git a/html/ups.html b/html/ups.html index 249a3cce..9e0b1157 100644 --- a/html/ups.html +++ b/html/ups.html @@ -1,45 +1,45 @@ - - - - - - - - -Last update 22-Oct-2001
+
+ +
MBSE BBS Netmail routing behaviour
+ +Introduction
++The mbfido program that is responsible for unpacking, +importing, exporting and routing of netmail has a build in default routing +plan. In general this is quite simple, if we know the destination node or +his uplink, (that node or uplink is in our setup), then we will route via +that node in our setup. If the node or his uplink is not in our setup, then +the nodelist is used and normal fidonet routing is used. This means, if you +are a node, everything goes to your hub, if you are a hub, then mail for +your downlinks will go direct to the downlinks because they are in your setup, +everything else goes to the host. +If you are a host, then your own downlinks will get the mail direct, +the downlinks of the hubs in your net well be routed via the hubs below you. +If it is for a node in your region but outside your net, mail will be routed via +the other hosts in your region. Mail to outside your region will go to the +region coordinators system. +
+ +
Tracking and bouncing
++At this moment there is no bouncing of undeliverable mail. I will built this +in, but it will only work inside your own net. I will never include code for +bouncing mail outside your net, because nodelists are always not uptodate. +
+ +
Special routing
++What if you need special routing. The solution is simple, add the routing +nodes to your setup and fill in the "route via" field. If you don't have a +session password with that node, leave the password fields blank. This node +will never know that he is in your setup as long as you have the notify +settings for that node switched off. To figure +out such solutions yourself, I have included the flow diagrams for the tracking +module. +
+ +
Main tracking routine:
++++ +=============================+ + | Trackmail to dest. | + +--------------+--------------+ + | + ++-------------+-------------++ + || rc = GetRoute to dest || (See next diagram). + ++-------------+-------------++ + | + +--------------+--------------+ yes + | rc = R_NOROUTE +-----------------+ + +--------------+--------------+ +-------+--------+ + | no | res: R_NOROUTE | + | +================+ + +--------------+--------------+ yes + | rc = R_UNLISTED +-----------------+ + +--------------+--------------+ +-------+--------+ + | | res: R_UNLISTED| + | +----------------+ + +--------------+--------------+ yes + | rc = R_LOCAL +-----------------+ + +--------------+--------------+ +-------+--------+ + | no | result: R_LOCAL| + | +================+ + +--------------+--------------+ no + | routing node in setup ? +-----------------+ + +--------------+--------------+ +-------+--------+ + | yes | result: rc | + | +================+ + +--------------+--------------+ no + | "Route via" filled in ? +-----------------+ + +--------------+--------------+ +-------+--------+ + | yes | res: R_ROUTE | + | +================+ + +--------------+--------------+ + | Change route to address | + | result = R_ROUTE | + +=============================+ +
+Sub function GetRoute:
+++ ++ +=============================+ + | GetRoute | + +--------------+--------------+ + | + +--------------+--------------+ + | Add domain name | + +--------------+--------------+ + | + +--------------+--------------+ yes + | Is dest our own address ? +------------------+ + +--------------+--------------+ +--------+-------+ + | no | rc = R_LOCAL | + | +================+ + +--------------+--------------+ yes + | Is dest our point address ? +------------------+ + +--------------+--------------+ +--------+-------+ + | no | rc = R_DIRECT | + | +================+ + +--------------+--------------+ yes (route to boss) + | Are we a point system +------------------+ + +--------------+--------------+ +--------+-------+ + | no | dest is my Boss| + | | res: R_DIRECT | + | +----------------+ + +--------------+--------------+ yes + | Dest. addr. in nodes setup? +------------------+ + +--------------+--------------+ +--------+-------+ + | no | rc = R_DIRECT | + | +================+ + +--------------+--------------+ yes + | Boss of point dest in setup +------------------+ + +--------------+--------------+ +--------+-------+ + | no | rc = R_DIRECT | + | | dest = Boss | + | +================+ + +--------------+--------------+ + | Is node listed and do we | yes + | know his uplink in setup ? +------------------+ + +--------------+--------------+ +--------+-------+ + | no | dest is uplink | + | | rc = R_DIRECT | + | +================+ + +--------------+--------------+ yes + | Are we host in network ? +------------------+ + +--------------+--------------+ +--------+-------+ + | no | Set host addr. | + | +--------+-------+ + | +----------+ + +--------------+--------------+ yes | + | Are we hub in domain ? +------------------+ | + +--------------+--------------+ +--------+-------+ | + | no | Set hub addr. | v + | +--------+-------+ | + | | | + +---------------<-----------------+-----<----+ + | + +--------------+--------------+ + | Set our region number | + +--------------+--------------+ + | + | + +--------------+--------------+ no + | Host address set ? +-----------------------------+ + +--------------+--------------+ | + | yes | + | | + +--------------+--------------+ + | Dest region <> our region | yes | + | or Dest zone <> our zone +------------------+ | + +--------------+--------------+ +--------+-------+ | + | no | Dest to RC | | + | | rc = R_ROUTE | | + | +================+ | + +--------------+--------------+ yes | + | Dest net <> our net +------------------+ | + +--------------+--------------+ +--------+-------+ | + | no | to host destnet| | + | | rc = R_ROUTE | | + | +================+ | + +--------------+--------------+ yes | + | Has node a hub +------------------+ | + +--------------+--------------+ +--------+-------+ | + | yes | to node's hub | | + +------+--------+ | rc = R_ROUTE | | + | dest is direct| +================+ | + | rc = R_ROUTE | | + +===============+ | + | + +------------------------<-------------------+ + +--------------+--------------+ no + | Hub address set ? +-----------------+ + +--------------+--------------+ +-------+--------+ + | yes | via our hub | + | | rc = R_ROUTE | + | +================+ + +--------------+--------------+ yes + | Dest node of our hub addr +-----------------+ + +--------------+--------------+ +-------+--------+ + | no | rc = R_DIRECT | + | +================+ + +------+-------+ + | dest is host | + | rc = R_ROUTE | + +==============+ +
+Go Back +
Using UPS semafore's. - - - --Last update 08-Jun-2001
-
-
MBSE BBS - Using UPS semafore's.
-- - -If you have a UPS and you are able to let your UPS software create semafore's when powerfail conditions -occur then read on. The MBSE BBS taskmanager and a lot of utilities will act on two special semafore's, -they are: - -
-
-I know not all UPS software can do this but most UPS software is open source so you can change it to create -these semafore's. It is not a problem that UPS semafore's still exist if the systems boots, the MBSE BBS -startup scripts will remove them before the bbs is started. -upsalarm
, this semafore should be set when there is no mains power, but there is enough - power left to operate your system. All background tasks will be suspended as long as this condition - is true. If the power comes back, the UPS software should remove this semafore. -upsdown
, this semafore should be set when the UPS sofware signals your system to go down. - This is a fatal condition and there is no way back. Even if the power comes back your system should - shutdown and the UPS will disconnect the power to your system. After a while it will turn the power on - again and your system boots. MBSE BBS will if this semafore is seen kick users out of the bbs, and the - system shutdown script will try to close MBSE BBS as quick as possible. Normal the close timeout is - one hour to let users normal finnish what they were doing, now it is only 30 seconds and if they were - not logged out, they will be disconnected anyway. -
- - -
+ + + + + + +Go Back - - - + +
Using UPS semafore's. + + + ++Last update 08-Jun-2001
+
+
MBSE BBS - Using UPS semafore's.
++ + +If you have a UPS and you are able to let your UPS software create semafore's when powerfail conditions +occur then read on. The MBSE BBS taskmanager and a lot of utilities will act on two special semafore's, +they are: + +
+
+I know not all UPS software can do this but most UPS software is open source so you can change it to create +these semafore's. It is not a problem that UPS semafore's still exist if the systems boots, the MBSE BBS +startup scripts will remove them before the bbs is started. +upsalarm
, this semafore should be set when there is no mains power, but there is enough + power left to operate your system. All background tasks will be suspended as long as this condition + is true. If the power comes back, the UPS software should remove this semafore. +upsdown
, this semafore should be set when the UPS sofware signals your system to go down. + This is a fatal condition and there is no way back. Even if the power comes back your system should + shutdown and the UPS will disconnect the power to your system. After a while it will turn the power on + again and your system boots. MBSE BBS will if this semafore is seen kick users out of the bbs, and the + system shutdown script will try to close MBSE BBS as quick as possible. Normal the close timeout is + one hour to let users normal finnish what they were doing, now it is only 30 seconds and if they were + not logged out, they will be disconnected anyway. +
+ + +
Go Back + + + diff --git a/lib/mbse.h b/lib/mbse.h index 4ffe6f05..8ebe705c 100644 --- a/lib/mbse.h +++ b/lib/mbse.h @@ -2,10 +2,10 @@ * * File ..................: mbse.h * Purpose ...............: Global variables for MBSE BBS - * Last modification date : 25-Aug-2000 + * Last modification date : 22-Oct-2001 * ***************************************************************************** - * Copyright (C) 1997-2000 + * Copyright (C) 1997-2001 * * Michiel Broek FIDO: 2:280/2802 * Beekmansbos 10 @@ -108,6 +108,7 @@ int iUnixMode; /* Using Unix Accounts */ char sUnixName[9]; /* Unix login name */ time_t Time2Go; /* Calculated time to force logout */ struct tm *l_date; /* Structure for Date */ +int iNode; /* Current node number */ time_t ltime; time_t Time_Now; diff --git a/mbsebbs/funcs.c b/mbsebbs/funcs.c index 76afd529..264a0edf 100644 --- a/mbsebbs/funcs.c +++ b/mbsebbs/funcs.c @@ -290,9 +290,14 @@ void ExtDoor(char *Program, int NoDoorsys, int Y2Kdoorsys, int Comport, int NoSu WhosDoingWhat(DOOR); - if((strstr(Program, "/A")) != NULL) { + if ((strstr(Program, "/N")) != NULL) { + sprintf(temp1, "%d", iNode); + strreplace(Program, (char *)"/N", temp1); + } + + if ((strstr(Program, "/A")) != NULL) { colour(3, 0); - if((String = strstr(Program, "/T=")) != NULL) { + if ((String = strstr(Program, "/T=")) != NULL) { String1 = String + 3; printf("\n%s", String1); } else @@ -305,9 +310,9 @@ void ExtDoor(char *Program, int NoDoorsys, int Y2Kdoorsys, int Comport, int NoSu strreplace(Program, (char *)"/A", temp1); for(i = 0; i < strlen(Program); i++) { - if(*(Program + i) == '\0') + if (*(Program + i) == '\0') break; - if(*(Program + i) == '/') + if (*(Program + i) == '/') *(Program + i) = '\0'; } } @@ -340,7 +345,7 @@ void ExtDoor(char *Program, int NoDoorsys, int Y2Kdoorsys, int Comport, int NoSu fprintf(fp, "0\r\n"); /* Effective baudrate */ } fprintf(fp, "8\r\n"); /* Databits */ - fprintf(fp, "1\r\n"); /* Node number */ + fprintf(fp, "%d\r\n", iNode); /* Node number */ if (Comport) fprintf(fp, "115200\r\n");/* Locked baudrate */ else @@ -425,6 +430,7 @@ int exec_nosuid(char *mandato) if (mandato == NULL) return 1; /* Prevent running a shell */ + Syslog('+', "Execve: /bin/sh -c %s", mandato); pid = fork(); if (pid == -1) diff --git a/mbsebbs/mbsebbs.c b/mbsebbs/mbsebbs.c index 0f21fe9e..a32cfd72 100644 --- a/mbsebbs/mbsebbs.c +++ b/mbsebbs/mbsebbs.c @@ -1,8 +1,8 @@ /***************************************************************************** * - * File ..................: bbs/mbsebbs.c + * File ..................: mbsebbs/mbsebbs.c * Purpose ...............: Main startup - * Last modification date : 28-Jun-2001 + * Last modification date : 22-Oct-2001 * ***************************************************************************** * Copyright (C) 1997-2001 @@ -102,13 +102,6 @@ int main(int argc, char **argv) #endif exit(1); } -// if (seteuid(pw->pw_uid) == -1) { -// perror("Can't seteuid() to \"mbse\" user"); -//#ifdef MEMWATCH -// mwTerm(); -//#endif -// exit(1); -// } /* * Set local time and statistic indexes. @@ -214,13 +207,15 @@ int main(int argc, char **argv) */ sprintf(temp, "%s/etc/ttyinfo.data", getenv("MBSE_ROOT")); + iNode = 0; if ((pTty = fopen(temp, "r")) == NULL) { WriteError("Can't read %s", temp); } else { fread(&ttyinfohdr, sizeof(ttyinfohdr), 1, pTty); while (fread(&ttyinfo, ttyinfohdr.recsize, 1, pTty) == 1) { - if (strcmp(ttyinfo.tty, pTTY) == 0) + iNode++; + if (strcmp(ttyinfo.tty, pTTY) == 0) break; } fclose(pTty); @@ -230,6 +225,7 @@ int main(int argc, char **argv) printf("No BBS on this port allowed!\n\n"); Quick_Bye(0); } + Syslog('b', "Node number %d", iNode); /* * Ask whether to display Connect String diff --git a/script/Makefile.am b/script/Makefile.am index 2314f811..563a29bd 100644 --- a/script/Makefile.am +++ b/script/Makefile.am @@ -22,8 +22,11 @@ install-exec-local: $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0711 monthly $(sysconfdir) ; \ echo "$(INSTALL) -o @OWNER@ -g @GROUP@ -m 0711 monthly $(sysconfdir)" ; \ fi + $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0755 bbsdoor.sh $(bindir) + $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0755 mem $(bindir) @bash ./installinit.sh -EXTRA_DIST = README maint midnight weekly monthly installinit.sh rc rc.shutdown mbse.start mbse.stop +EXTRA_DIST = README maint midnight weekly monthly installinit.sh rc rc.shutdown \ +mbse.start mbse.stop bbsdoor.sh mem diff --git a/script/Makefile.in b/script/Makefile.in index ef584e4a..46966842 100644 --- a/script/Makefile.in +++ b/script/Makefile.in @@ -74,7 +74,8 @@ VERSION = @VERSION@ SUBDIRS = . -EXTRA_DIST = README maint midnight weekly monthly installinit.sh rc rc.shutdown mbse.start mbse.stop +EXTRA_DIST = README maint midnight weekly monthly installinit.sh rc rc.shutdown mbse.start mbse.stop bbsdoor.sh mem + mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = @@ -304,6 +305,8 @@ install-exec-local: $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0711 monthly $(sysconfdir) ; \ echo "$(INSTALL) -o @OWNER@ -g @GROUP@ -m 0711 monthly $(sysconfdir)" ; \ fi + $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0755 bbsdoor.sh $(bindir) + $(INSTALL) -o @OWNER@ -g @GROUP@ -m 0755 mem $(bindir) @bash ./installinit.sh # Tell versions [3.59,3.63) of GNU make to not export all variables.