From 6fcdb10f5351e2e837ac19bb199cc878a9c2751b Mon Sep 17 00:00:00 2001 From: Michiel Broek Date: Mon, 22 Oct 2001 17:33:55 +0000 Subject: [PATCH] serveral updates for running DOS doors --- html/basic.html | 316 ++++----- html/dist.html | 148 ++--- html/flow.html | 338 +++++----- html/ftsc/index.htm | 202 +++--- html/gwnews.html | 762 +++++++++++----------- html/images/e_menu.gif | Bin 11254 -> 11294 bytes html/install.html | 108 ++-- html/intergate.html | 204 +++--- html/intro.html | 198 +++--- html/invoking.html | 140 ++-- html/known_bugs.html | 74 +-- html/license/index.htm | 78 +-- html/menus/control.html | 254 ++++---- html/menus/index.htm | 332 +++++----- html/menus/menu0.html | 358 ++++++----- html/menus/menu100.html | 294 ++++----- html/menus/menu200.html | 276 ++++---- html/menus/menu300.html | 198 +++--- html/menus/menu400.html | 120 ++-- html/menus/menu500.html | 112 ++-- html/mgetty.html | 344 +++++----- html/misc/dropfile.html | 234 +++---- html/misc/ftpserver.html | 196 +++--- html/misc/index.htm | 92 +-- html/misc/ipmailer.html | 344 +++++----- html/misc/jam.html | 1276 ++++++++++++++++++------------------- html/misc/outbound.html | 228 +++---- html/misc/semafore.html | 126 ++-- html/misc/usleep.html | 122 ++-- html/nodelist.html | 262 ++++---- html/postfix.html | 320 +++++----- html/programs/mbfile.html | 190 +++--- html/routing.html | 422 ++++++------ html/ups.html | 90 +-- lib/mbse.h | 5 +- mbsebbs/funcs.c | 16 +- mbsebbs/mbsebbs.c | 16 +- script/Makefile.am | 5 +- script/Makefile.in | 5 +- 39 files changed, 4412 insertions(+), 4393 deletions(-) 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 @@ - - - - - - - - -MBSE BBS basic installation. - - - -
-
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: -
    -
  1. Create the group bbs -
  2. Create the user mbse -
  3. Create a .profile for user mbse -
  4. Create and set owner of directory tree under /opt/mbse -
-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: -
    -
  1. The user bbs is added. -
  2. 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. -
  3. If they don't exist in the file /etc/services the services fido, tfido -and binkp will be added. -
  4. 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 -Back to Index - -

- - + + + + + + + + +MBSE BBS basic installation. + + + +
+
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: +
    +
  1. Create the group bbs +
  2. Create the user mbse +
  3. Create a .profile for user mbse +
  4. Create and set owner of directory tree under /opt/mbse +
+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: +
    +
  1. The user bbs is added. +
  2. 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. +
  3. If they don't exist in the file /etc/services the services fido, tfido +and binkp will be added. +
  4. 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 +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 @@ - - - - - - - - -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. -

 

- -Back 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. +

 

+ +Back 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. -

 

- -Back Go Back -

- - - + + + + + + + + +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. +

 

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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

- - -

- -

FSP Documents

- - - -

-

FTA Documents

- - - -

-

FTS Documents

- - -
- -IndexBack to Index -
- - - + + + + + + + + +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

+ + +

+ +

FSP Documents

+ + + +

+

FTA Documents

+ + + +

+

FTS Documents

+ + +
+ +IndexBack to Index +
+ + + 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 @@ - - - - - - - - -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:::*
-
-
- -BackGo back -HomeGo to main - -
- - - + + + + + + + + +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:::*
+
+
+ +BackGo back +HomeGo to main + +
+ + + diff --git a/html/images/e_menu.gif b/html/images/e_menu.gif index a2b773ec69b07fe66f5cd56134dc45710ca0f029..3b225ce2591f8fab7c8810df843c6cc2ccae9121 100644 GIT binary patch delta 9818 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 AZ2$lO delta 9772 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 G0028z>j;DZ 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 @@ - - - - - - - - -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 IndexBack to Index -

- - - + + + + + + + + +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 IndexBack to Index +

+ + + 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 @@ - - - - - - - - -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 -

- -Back Go Back -

- - - + + + + + + + + +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 +

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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: -

    -
  1. http://mbse.sourceforge.net Primary site -
  2. http://mbse.freezer-burn.org Mirror site -
  3. http://www.telematique.org/mbse Mirror site -
  4. fidonet node 2:280/2802 (+31-255-515973). -
  5. fidonet node 2:280/2801 (+31-255-533858). -
-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 -

 

- -

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. -

 

- - -Back 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: +

    +
  1. http://mbse.sourceforge.net Primary site +
  2. http://mbse.freezer-burn.org Mirror site +
  3. http://www.telematique.org/mbse Mirror site +
  4. fidonet node 2:280/2802 (+31-255-515973). +
  5. fidonet node 2:280/2801 (+31-255-533858). +
+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 +

 

+ +

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. +

 

+ + +Back Go Back +

+ + + 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 @@ - - - - - - - - -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. -

- -Back 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. +

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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. -
- -Back 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. +
+ +Back 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.

- - - -IndexBack to Index -
- - - + + + + + + + + +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.

+ + + +IndexBack to Index +
+ + + 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 @@ - - - - - - - - -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);
-
-
-
- -
-Index -Main Index  -Back -Menus 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);
+
+
+
+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -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. -

- - -

    -
  1. Selection key. This is the key a user must press to activate -this menu. This field is ignored when AutoExec is set to Yes.
  2. - -
  3. Type nr. this is the menu type to execute. For a description -of all available types see below.
  4. - -
  5. Optional data. Some menus need optional data, for example the -function goto another menu needs the name of that menu file here.
  6. - -
  7. Display. What is to be displayed to the user. You can use this instead -of ANSI screens. -
  8. - -
  9. 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.
  10. - -
  11. 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.
  12. - -
  13. 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.
  14. - -
  15. Password. You can protect the menu selection with a password. -If this field is empty, no password check is done.
  16. - -
  17. Credit. How much credit a user must have to execute this menu -selection. This field is not in use yet.
  18. - -
  19. Lo-colors. The normal display color for the display line. -
  20. - -
  21. Hi-colors. The bright display color for the display line.
  22. - -
  23. AutoExec. If this is an automatic executed selection.
  24. - -
  25. No door.sys Suppress writing of a door.sys file in the users -home directory. This item is only visible with menu type 7.
  26. - -
  27. 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.
  28. - -
  29. 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.
  30. - -
-

 

- -

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 Back -

- - + + + + + + + + +MBSE BBS Menu System. + + + +
+
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. +

+ + +

    +
  1. Selection key. This is the key a user must press to activate +this menu. This field is ignored when AutoExec is set to Yes.
  2. + +
  3. Type nr. this is the menu type to execute. For a description +of all available types see below.
  4. + +
  5. Optional data. Some menus need optional data, for example the +function goto another menu needs the name of that menu file here.
  6. + +
  7. Display. What is to be displayed to the user. You can use this instead +of ANSI screens. +
  8. + +
  9. 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.
  10. + +
  11. 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.
  12. + +
  13. 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.
  14. + +
  15. Password. You can protect the menu selection with a password. +If this field is empty, no password check is done.
  16. + +
  17. Credit. How much credit a user must have to execute this menu +selection. This field is not in use yet.
  18. + +
  19. Lo-colors. The normal display color for the display line. +
  20. + +
  21. Hi-colors. The bright display color for the display line.
  22. + +
  23. AutoExec. If this is an automatic executed selection.
  24. + +
  25. No door.sys Suppress writing of a door.sys file in the users +home directory. This item is only visible with menu type 7.
  26. + +
  27. 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.
  28. + +
  29. 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.
  30. + +
+

 

+ +

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 Back +

+ + 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 @@ - - - - - - - - -MBSE BBS Menus - Global Menus. - - - -
-
Last update 26-Sep-2001
-

 

- -

MBSE BBS Global Menus

-
- -
    - -
  1. 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.
    -

    - -

  2. 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.
    -

    - -

  3. Return from Gosub: This will go back one - gosub level. If you are already at the top level nothing happens.
    - Optional data: None.
    -

    - -

  4. 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.
    -

    - -

  5. 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!
    -

    - -

  6. 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. -
    -

    - -

  7. 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.
    -

    - -

  8. Show product information: This will show - copyright information about MBSE BBS.
    - Optional data: None.
    -

    - -

  9. Display todays callers: This will display a - list of todays callers to the BBS.
    - Optional data: "/H" Show handles instead of real names.
    -

    - -

  10. Display userlist: Display all users in the - users database except those that are hidden.
    - Optional data: "/H" Show handles instead of real names.
    -

    - -

  11. Time statistics: Display the users time - statistics.
    - Optional data: None.
    -

    - -

  12. 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. -

    - -

  13. Terminate call: Terminale this call and - hangup.
    - Optional data: None. -

    - -

  14. Make a log entry: This will write a line in - the logfile.
    - Optional data: The information you want in the logfile.
    -

    - -

  15. 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.
    -

    - -

  16. 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.
    -

    - -

  17. 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.
    -

    - -

  18. Send online message: Send an online message - to a user on another line.
    - Optional data: "/H" Use handles instead of real names.
    -

    - -

  19. 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.
    -

    - -

  20. 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.
    -

    - -

  21. 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.
    -

    - -

  22. Nextuser door: This runs the message to next - user door.
    - Optional data: None.
    -

    - -

  23. Timebank door: This runs the time bank door.
    - Optional data: None.
    -

    - -

  24. Safe cracker door: This runs the Safe Cracker - door.
    - Optional data: None.
    -
- -
-Index - Main Index  -Back - Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - Global Menus. + + + +
+
Last update 22-Oct-2001
+

 

+ +

MBSE BBS Global Menus

+
+ +
    + +
  1. 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.
    +

    + +

  2. 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.
    +

    + +

  3. Return from Gosub: This will go back one + gosub level. If you are already at the top level nothing happens.
    + Optional data: None.
    +

    + +

  4. 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.
    +

    + +

  5. 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!
    +

    + +

  6. 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. +
    +

    + +

  7. 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. +
    +
    +

    + +

  8. Show product information: This will show + copyright information about MBSE BBS.
    + Optional data: None.
    +

    + +

  9. Display todays callers: This will display a + list of todays callers to the BBS.
    + Optional data: "/H" Show handles instead of real names.
    +

    + +

  10. Display userlist: Display all users in the + users database except those that are hidden.
    + Optional data: "/H" Show handles instead of real names.
    +

    + +

  11. Time statistics: Display the users time + statistics.
    + Optional data: None.
    +

    + +

  12. 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. +

    + +

  13. Terminate call: Terminale this call and + hangup.
    + Optional data: None. +

    + +

  14. Make a log entry: This will write a line in + the logfile.
    + Optional data: The information you want in the logfile.
    +

    + +

  15. 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.
    +

    + +

  16. 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.
    +

    + +

  17. 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.
    +

    + +

  18. Send online message: Send an online message + to a user on another line.
    + Optional data: "/H" Use handles instead of real names.
    +

    + +

  19. 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.
    +

    + +

  20. 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.
    +

    + +

  21. 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.
    +

    + +

  22. Nextuser door: This runs the message to next + user door.
    + Optional data: None.
    +

    + +

  23. Timebank door: This runs the time bank door.
    + Optional data: None.
    +

    + +

  24. Safe cracker door: This runs the Safe Cracker + door.
    + Optional data: None.
    +
+ +
+Index + Main Index  +Back + Menus Index +
+ + + 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 @@ - - - - - - - - -MBSE BBS Menus - File Area Menus. - - - -
-
Last update 02-Feb-2001
-

 

- -

MBSE BBS File Area Menus

-
- -
    - -
  1. 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.
    -

    - -

  2. 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.
    -

    - -

  3. View File: Not yet implemented.
    - Optional data: None.
    -

    - -

  4. 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.
    -

    - -

  5. 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.
    -

    - -

  6. 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.
    -

    - -

  7. 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.
    -

    - -

  8. 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.
    -

    - -

  9. 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.
    -

    - -

  10. Edit Taglist: This option is for the user to - edit the list of files he has tagged for later download.
    - Optional data: None.
    -

    - -

  11. View file in homedir: Not yet implemented.
    - Optional data: None.
    -

    - -

  12. Download Direct: Download a file direct.
    - Optional data: The full path and filename to the file to - download.
    -

    - -

  13. 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.
    -

    - -

  14. List Homedir: This option will list the files - in the users home directory.
    - Optional data: None.
    -

    - -

  15. Delete in Homedir: This option will let the - user delete one or more files from his home directory.
    - Optional data: None.
    -

    - -

  16. Unpack file in Homedir: Not yet implemented.
    - Optional data: None.
    -

    - -

  17. Pack files in Homedir: Not yet implemented.
    - Optional data: None.
    -

    - -

  18. Download Homedir: This option will let the - user download from his home directory.
    - Optional data: None.
    -

    - -

  19. Upload Homedir: This option will let the user - upload files to his home directory.
    - Optional data: None.
    -
- -
-Index -Main Index  -Back -Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - File Area Menus. + + + +
+
Last update 02-Feb-2001
+

 

+ +

MBSE BBS File Area Menus

+
+ +
    + +
  1. 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.
    +

    + +

  2. 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.
    +

    + +

  3. View File: Not yet implemented.
    + Optional data: None.
    +

    + +

  4. 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.
    +

    + +

  5. 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.
    +

    + +

  6. 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.
    +

    + +

  7. 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.
    +

    + +

  8. 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.
    +

    + +

  9. 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.
    +

    + +

  10. Edit Taglist: This option is for the user to + edit the list of files he has tagged for later download.
    + Optional data: None.
    +

    + +

  11. View file in homedir: Not yet implemented.
    + Optional data: None.
    +

    + +

  12. Download Direct: Download a file direct.
    + Optional data: The full path and filename to the file to + download.
    +

    + +

  13. 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.
    +

    + +

  14. List Homedir: This option will list the files + in the users home directory.
    + Optional data: None.
    +

    + +

  15. Delete in Homedir: This option will let the + user delete one or more files from his home directory.
    + Optional data: None.
    +

    + +

  16. Unpack file in Homedir: Not yet implemented.
    + Optional data: None.
    +

    + +

  17. Pack files in Homedir: Not yet implemented.
    + Optional data: None.
    +

    + +

  18. Download Homedir: This option will let the + user download from his home directory.
    + Optional data: None.
    +

    + +

  19. Upload Homedir: This option will let the user + upload files to his home directory.
    + Optional data: None.
    +
+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -MBSE BBS Menus - Message Area Menus. - - - -
-
Last update 02-Feb-2001
-

 

- -

MBSE BBS Message Area Menus

-
- -
    - -
  1. 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.
    -

    - -

  2. Post a Message: This option lets the user - post a new message.
    - Optional data: None.
    -

    - -

  3. 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.
    -

    - -

  4. Check for Mail: Check for new arrived mail.
    - Optional data: None.
    -

    - -

  5. Quickscan Messages: Make a quick overview - list of all messages in that area.
    - Optional data: None.
    -

    - -

  6. 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.
    -

    - -

  7. Mail Status: This gives a complete overview - of all available mail at the bbs.
    - Optional data: None.
    -

    - -

  8. OLR: Tag Area: This option lets - the user tag one or more areas to be included in his offline mail packet.
    - Optional data: None.
    -

    - -

  9. 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.
    -

    - -

  10. OLR: View Tags: This option lets - the user view which areas will be included in his offline mail packet.
    - Optional data: None.
    -

    - -

  11. OLR: Restrict Date: Not yet - implemented.
    - Optional data: None.
    -

    - -

  12. 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.
    -

    - -

  13. OLR: Download BlueWave: Download mail in - BlueWave version 2 format.
    - Optional data: None.
    -

    - -

  14. OLR: Download QWK: Download mail in QWK - format.
    - Optional data: None.
    -

    - -

  15. OLR: Download ASCII: Download mail in flat - ASCII format. Not yet implemented.
    - Optional data: None.
    -

    - -

  16. Read Email Read users private email.
    - Optional data: None.
    -

    - -

  17. Write Email Post an email message.
    - Optional data: None.
    -

    - -

  18. Trash Email Put email in the trashcan. - Not Yet implemented.
    - Optional data: None.
    -

    - -

  19. 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.
    -

    - -

  20. Quickscan Email Make a quick overview - list of all messages in the selected e-mail area.
    - Optional data: None.
    -

    -

- -
-Index -Main Index  -Back -Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - Message Area Menus. + + + +
+
Last update 02-Feb-2001
+

 

+ +

MBSE BBS Message Area Menus

+
+ +
    + +
  1. 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.
    +

    + +

  2. Post a Message: This option lets the user + post a new message.
    + Optional data: None.
    +

    + +

  3. 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.
    +

    + +

  4. Check for Mail: Check for new arrived mail.
    + Optional data: None.
    +

    + +

  5. Quickscan Messages: Make a quick overview + list of all messages in that area.
    + Optional data: None.
    +

    + +

  6. 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.
    +

    + +

  7. Mail Status: This gives a complete overview + of all available mail at the bbs.
    + Optional data: None.
    +

    + +

  8. OLR: Tag Area: This option lets + the user tag one or more areas to be included in his offline mail packet.
    + Optional data: None.
    +

    + +

  9. 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.
    +

    + +

  10. OLR: View Tags: This option lets + the user view which areas will be included in his offline mail packet.
    + Optional data: None.
    +

    + +

  11. OLR: Restrict Date: Not yet + implemented.
    + Optional data: None.
    +

    + +

  12. 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.
    +

    + +

  13. OLR: Download BlueWave: Download mail in + BlueWave version 2 format.
    + Optional data: None.
    +

    + +

  14. OLR: Download QWK: Download mail in QWK + format.
    + Optional data: None.
    +

    + +

  15. OLR: Download ASCII: Download mail in flat + ASCII format. Not yet implemented.
    + Optional data: None.
    +

    + +

  16. Read Email Read users private email.
    + Optional data: None.
    +

    + +

  17. Write Email Post an email message.
    + Optional data: None.
    +

    + +

  18. Trash Email Put email in the trashcan. + Not Yet implemented.
    + Optional data: None.
    +

    + +

  19. 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.
    +

    + +

  20. Quickscan Email Make a quick overview + list of all messages in the selected e-mail area.
    + Optional data: None.
    +

    +

+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -MBSE BBS Menus - User Settings Menus. - - - -
-
Last update 02-Feb-2001
-

 

- -

MBSE BBS User Settings Menus

-
- -
    - -
  1. Change Transfer Protocol: Let the user - select a new file transfer protocol.
    - Optional data: None.
    -

    - -

  2. Change Password: Let the user change - his FidoNet password.
    - Optional data: None.
    -

    - -

  3. Change Location: Let the user change - his location.
    - Optional data: None.
    -

    - -

  4. Change Graphics: Let the user toggle - graphics mode on or off.
    - Optional data: None.
    -

    - -

  5. Change Voicephone: Let the user change - his voice phonenumber.
    - Optional data: None.
    -

    - -

  6. Change Dataphone: Let the user change - his data phonenumber.
    - Optional data: None.
    -

    - -

  7. Change Expertmode: This command will be - removed.
    - Optional data: None.
    -

    - -

  8. Change Scrennlength: This command will - let the user set a new screenlength, the default is 24.
    - Optional data: None.
    -

    - -

  9. 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.
    -

    - -

  10. Change Language: Let the user select a new - default language.
    - Optional data: None.
    -

    - -

  11. Change Hotkeys: Let the user toggle the - use of Hotkeys on or off..
    - Optional data: None.
    -

    - -

  12. Change Handle: Let the user select a new - handle (nickname).
    - Optional data: None.
    -

    - -

  13. Change Don't Disturb: Let the user toggle - the "do not disturb" flag.
    - Optional data: None.
    -

    - -

- -
-Index -Main Index  -Back -Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - User Settings Menus. + + + +
+
Last update 02-Feb-2001
+

 

+ +

MBSE BBS User Settings Menus

+
+ +
    + +
  1. Change Transfer Protocol: Let the user + select a new file transfer protocol.
    + Optional data: None.
    +

    + +

  2. Change Password: Let the user change + his FidoNet password.
    + Optional data: None.
    +

    + +

  3. Change Location: Let the user change + his location.
    + Optional data: None.
    +

    + +

  4. Change Graphics: Let the user toggle + graphics mode on or off.
    + Optional data: None.
    +

    + +

  5. Change Voicephone: Let the user change + his voice phonenumber.
    + Optional data: None.
    +

    + +

  6. Change Dataphone: Let the user change + his data phonenumber.
    + Optional data: None.
    +

    + +

  7. Change Expertmode: This command will be + removed.
    + Optional data: None.
    +

    + +

  8. Change Scrennlength: This command will + let the user set a new screenlength, the default is 24.
    + Optional data: None.
    +

    + +

  9. 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.
    +

    + +

  10. Change Language: Let the user select a new + default language.
    + Optional data: None.
    +

    + +

  11. Change Hotkeys: Let the user toggle the + use of Hotkeys on or off..
    + Optional data: None.
    +

    + +

  12. Change Handle: Let the user select a new + handle (nickname).
    + Optional data: None.
    +

    + +

  13. Change Don't Disturb: Let the user toggle + the "do not disturb" flag.
    + Optional data: None.
    +

    + +

+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -MBSE BBS Menus - Oneliner Menus. - - - -
-
Last update 02-Feb-2001
-

 

- -

MBSE BBS Oneliner Menus

-
- -
    - -
  1. Oneliner Add: Let the user add a new - oneliner.
    - Optional data: None.
    -

    - -

  2. Oneliner List: Let the user list all the - available oneliners.
    - Optional data: None.
    -

    - -

  3. Oneliner Show: Let the user show a - specific oneliner.
    - Optional data: None.
    -

    - -

  4. 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.
    -

    - -

  5. 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.
    -

    - -

- -
-Index -Main Index  -Back -Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - Oneliner Menus. + + + +
+
Last update 02-Feb-2001
+

 

+ +

MBSE BBS Oneliner Menus

+
+ +
    + +
  1. Oneliner Add: Let the user add a new + oneliner.
    + Optional data: None.
    +

    + +

  2. Oneliner List: Let the user list all the + available oneliners.
    + Optional data: None.
    +

    + +

  3. Oneliner Show: Let the user show a + specific oneliner.
    + Optional data: None.
    +

    + +

  4. 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.
    +

    + +

  5. 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.
    +

    + +

+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -MBSE BBS Menus - BBS List Menus. - - - -
-
Last update 02-Feb-2001
-

 

- -

MBSE BBS BBS List Menus

-
- -
    - -
  1. Add a BBS: Let the user add a BBS to the - BBS advertising database.
    - Optional data: None.
    -

    - -

  2. List BBS'es: Show a list of BBS'es in the - BBS database.
    - Optional data: None.
    -

    - -

  3. Show BBS: Show a specific BBS.
    - Optional data: None.
    -

    - -

  4. 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.
    -

    - -

  5. Search BBS: Search for a specific BBS.
    - Optional data: None.
    -

    - -

- -
-Index -Main Index  -Back -Menus Index -
- - - + + + + + + + + +MBSE BBS Menus - BBS List Menus. + + + +
+
Last update 02-Feb-2001
+

 

+ +

MBSE BBS BBS List Menus

+
+ +
    + +
  1. Add a BBS: Let the user add a BBS to the + BBS advertising database.
    + Optional data: None.
    +

    + +

  2. List BBS'es: Show a list of BBS'es in the + BBS database.
    + Optional data: None.
    +

    + +

  3. Show BBS: Show a specific BBS.
    + Optional data: None.
    +

    + +

  4. 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.
    +

    + +

  5. Search BBS: Search for a specific BBS.
    + Optional data: None.
    +

    + +

+ +
+Index +Main Index  +Back +Menus Index +
+ + + 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 @@ - - - - - - - - -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. -

- -Back Go Back -

- - - + + + + + + + + +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. +

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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
-
-

- -Back Go Back -

- - - + + + + + + + + +BBS doors dropfiles. + + + +
+
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
+
+

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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. -

- -Back 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. +

+ +Back Go Back +

+ + + 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 @@ - - - - - - - - -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

- - -
- -IndexBack to Index -
- - - + + + + + + + + +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

+ + +
+ +IndexBack to Index +
+ + + 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 @@ - - -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.
-
- -Back 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.
+
+ +Back 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.LZHNEWS.
-    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
-
- -Back 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.LZHNEWS.
+    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
+
+ +Back 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.
-
-
- -Back -Go Back -
- - - + + + + + + + + +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.
+
+
+ +Back +Go Back +
+ + + 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 @@ - - - - - - - - -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.
-
- -Back 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.
+
+ +Back Go Back +
+ + + 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 @@ - - -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.
-
-
- -Back 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.
+
+
+ +Back 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:
-

    -
  1. /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. -
  2. /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. -
  3. /var/spool/mbse/nodelist, this is the systems nodelist -directory defined in mbsetup, menu 1.3.4 -
-In short the steps to process the nodediff's is as follows: -
    -
  1. Receive the nodediff and store it for download. -
  2. Apply the diff to the latest nodelist. -
  3. Hatch the new compressed nodelist. -
  4. Store the new nodelist for download. -
  5. Unpack the new nodelist in the nodelist compiler directory. -
  6. Set the compile semafore. -
  7. Compile the nodelists. -
-Next I will describe these steps in detail. -

 

- -

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. -

- -

 

- -Back Go Back -
- - - + + + + + + + + +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:
+

    +
  1. /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. +
  2. /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. +
  3. /var/spool/mbse/nodelist, this is the systems nodelist +directory defined in mbsetup, menu 1.3.4 +
+In short the steps to process the nodediff's is as follows: +
    +
  1. Receive the nodediff and store it for download. +
  2. Apply the diff to the latest nodelist. +
  3. Hatch the new compressed nodelist. +
  4. Store the new nodelist for download. +
  5. Unpack the new nodelist in the nodelist compiler directory. +
  6. Set the compile semafore. +
  7. Compile the nodelists. +
+Next I will describe these steps in detail. +

 

+ +

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. +

+ +

 

+ +Back Go Back +
+ + + 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 @@ - - - - - - - - -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. - -

- -Back -Go back -Home Go to main -

- - - + + + + + + + + +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. + +

+ +Back +Go back +Home Go to main +

+ + + 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 @@ - - - - - - - - -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. -

- -Index Back to index  -Main Back to Main index -

- - - + + + + + + + + +MBSE BBS Programs - mbfile - File database maintenance program. + + + +
+
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. +

+ +Index Back to index  +Main Back to Main index +

+ + + 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 @@ - - - - - - - - -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 |
-		+==============+
-
-
- -Back Go Back -
- - - + + + + + + + + +Netmail routing behaviour. + + + +
+
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 |
+		+==============+
+
+
+ +Back Go Back +
+ + + 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 @@ - - - - - - - - -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: - -

    -
  1. 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. -
  2. 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. -
-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. -

 

- - -Back 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: + +

    +
  1. 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. +
  2. 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. +
+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. +

 

+ + +Back 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.