Converted from CVS
This commit is contained in:
50
html/programs/index.htm
Normal file
50
html/programs/index.htm
Normal file
@@ -0,0 +1,50 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: index.htm,v 1.15 2004/04/13 18:24:13 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META NAME="Language" content='en'>
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align=right><h5>Last update 13-Feb-2004</h5></div>
|
||||
<div align=center><h1>MBSE BBS Programs.</h1></div>
|
||||
|
||||
|
||||
<ol>
|
||||
<li><A HREF="mbaff.html">mbaff, Announce newfiles and filefind</A>
|
||||
<li><A HREF="mball.html">mball, Allfiles and newfiles list creator</A>
|
||||
<li><A HREF="mbcico.html">mbcico, The Fidonet mailer ala ifcico</A>
|
||||
<li><A HREF="mbdiff.html">mbdiff, Nodelist difference processor</A>
|
||||
<li><A HREF="mbfido.html">mbfido, Fidonet mail and files procesor</A>
|
||||
<li><A HREF="mbfile.html">mbfile, Files database maintenance program</A>
|
||||
<li><A HREF="mbindex.html">mbindex, Nodelist index compiler</A>
|
||||
<li><A HREF="mblang.html">mblang, Language datafile compiler</A>
|
||||
<li><A HREF="mblogin.html">mblogin, Unix login replacement</A>
|
||||
<li><A HREF="mbmon.html">mbmon, The monitor program</A>
|
||||
<li><A HREF="mbmsg.html">mbmsg, The messagebase utility program</A>
|
||||
<li><A HREF="mbnntp.html">mbnntp, The news server</A>
|
||||
<li><A HREF="mbout.html">mbout, The mailer outbound program</A>
|
||||
<li><A HREF="mbpasswd.html">mbpasswd, The passwd wrapper</A>
|
||||
<li><A HREF="mbsebbs.html">mbsebbs, The bbs program</A>
|
||||
<li><A HREF="mbseq.html">mbseq, Sequence number creator</A>
|
||||
<li><A HREF="mbsetup.html">mbsetup, The setup program</A>
|
||||
<li><A HREF="mbstat.html">mbstat, The bbs status change program</A>
|
||||
<li><A HREF="mbtoberep.html">mbtoberep, The toberep.data lister</A>
|
||||
<li><A HREF="mbuser.html">mbuser, The userbase maintenance program</A>
|
||||
<li><A HREF="mbuseradd.html">mbuseradd, The adduser wrapper</A>
|
||||
</ol>
|
||||
|
||||
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
99
html/programs/mbaff.html
Normal file
99
html/programs/mbaff.html
Normal file
@@ -0,0 +1,99 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbaff.html,v 1.6 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META NAME="Language" content='en'>
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbaff - Announce new files and Filefind processor.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 30-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mbaff - Announce new files and FileFind processor.</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<code><strong>mbaff</strong> [command] <options></code>
|
||||
<P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbaff</strong>
|
||||
is the new files report generator and filefind server for mbsebbs.
|
||||
In order to run <strong>mbaff</strong>
|
||||
you must first start <strong>mbsed</strong>,
|
||||
this is the deamon which controls all bbs activities.
|
||||
<P>
|
||||
When <strong>mbaff</strong>
|
||||
is run with the commandline command <strong>announce</strong>
|
||||
the first thing it does is to scan all the file databases for files
|
||||
from which the announced flag is not yet set, and that area has a valid
|
||||
newfiles groupname. These files are uploads for example.
|
||||
If such a file is found the announced flag is set and
|
||||
the file is added to the
|
||||
<strong>toberep.data</strong>
|
||||
file. This file may already contain
|
||||
new files who were received as .tic files and processed by the
|
||||
<strong>mbfido</strong> program.
|
||||
After this is done the <strong>toberep.data</strong>
|
||||
file is compared against the newfiles
|
||||
reports to see if there is anything to report. If that's the case the
|
||||
creation of reports begins in the echomail areas specified. After that the
|
||||
<strong>toberep.data</strong>
|
||||
file is erased and the mailout semafore set. <br>
|
||||
The files to announce are divided into groups, the names of the groups are
|
||||
set in the file download areas. If you plan this well, you can make seperate
|
||||
announcements for several networks, announce files bij groups of file, ie. HAM
|
||||
or .jpg pictures, GNU/Linux etc.
|
||||
<P>
|
||||
When
|
||||
<strong>mbaff</strong>
|
||||
is run with the commandline command
|
||||
<strong>filefind</strong>
|
||||
it will search each echomail area for unreceived messages addressed to
|
||||
<strong>allfix</strong> or <strong>filefind</strong>.
|
||||
It will read the message header and mark the message as received. The
|
||||
search options are set on the subject line. All file areas for which the
|
||||
filefind flag is set to true will be searched for the requested search
|
||||
patterns. If there are files found a reply will be generated for the
|
||||
user who wrote the request. If the reply area is different from the scan
|
||||
area, the reply is placed in the reply area. If it's not set, the reply
|
||||
goes into the same area. If the netmail option is set, the reply will
|
||||
be sent by netmail. To prevent echomail overflow the replies in the same
|
||||
area are limited to 15 found files, replies in the other echomail area
|
||||
are limited to 50 files. Netmail replies will contain up to 100 files.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbaff</strong> you need to set one global environment variable
|
||||
<strong>$MBSE_ROOT</strong>.
|
||||
This variable must point to the root of the bbs directoy structure. The
|
||||
main configuration file
|
||||
<strong>config.data</strong>
|
||||
must be present in the ~/etc subdirectory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbaff announce</strong></code> - Announce new files.<br>
|
||||
<code><strong>mbaff filefind</strong></code> - Process filefind requests.
|
||||
<P> <P>
|
||||
|
||||
<H3>OPTIONS</H3>
|
||||
<P>
|
||||
<code><strong>mbaff [command] -quiet</strong></code> - Quiet mode, no screen output.
|
||||
Use this switch if you run <strong>mbaff</strong> from the crontab.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Back" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Index" Border="0">Back to main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
75
html/programs/mball.html
Normal file
75
html/programs/mball.html
Normal file
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mball.html,v 1.7 2005/08/11 15:28:25 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - Allfile listing generator.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 11-Aug-2005</h5></div>
|
||||
<div align="center"><H1>mball - Allfiles listing generator</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mball</strong> [commands] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mball</strong> is the allfiles and newfiles listing generator that
|
||||
can be made available on your bbs for your users to get a complete listing
|
||||
of wat is available for download. When used with the <strong>-zip</strong>
|
||||
option it can also produce complessed versions of these two listings. The
|
||||
resulting files are created in the current directory. After the creation of
|
||||
these files you can hatch them into your bbs with the programs <strong>
|
||||
mbfido tic</strong> when you properly setup a .tic file area for this purpose
|
||||
and create records for the hatch manager.
|
||||
<P>
|
||||
Just before the reports are created, and if you defined WWW and FTP logfiles
|
||||
with <b>mbsetup</b> in menu 1.13, the logfiles are analysed and and files
|
||||
downloaded from the bbs are counted as valid downloads. To make sure downloads
|
||||
are only counted once, a status file is created in ~/var, this marks the date
|
||||
the last time the logfiles are checked. For the best results make sure you run
|
||||
<b>mball</b> before any WWW and FTP logfiles are rotated, else you might miss
|
||||
some downloads.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mball</strong> you need to set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root of the bbs
|
||||
directory structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mball list</strong> </code> - Create allfiles.txt and newfiles.txt files.
|
||||
<p> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mball [command] -quiet</strong></code> - Quiet mode, supress screen output.<br>
|
||||
<code><strong>mball list -zip</strong> </code> - Create zipped listings as well.
|
||||
<p>
|
||||
|
||||
<H3>Setup.</H3>
|
||||
<P>
|
||||
In <strong>mbsetup</strong> menu 1.13 you need to set the days to include in newfiles listings and the maximum security level.
|
||||
Also define valid paths to logfiles that are created by your web and ftp server.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
295
html/programs/mbcico.html
Normal file
295
html/programs/mbcico.html
Normal file
@@ -0,0 +1,295 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbcico.html,v 1.9 2005/06/19 18:42:52 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbcico - The Fidonet mailer.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 19-Jun-2005</h5></div>
|
||||
<div align="center"><H1>mbcico - The Fidonet mailer.</H1></div>
|
||||
|
||||
This is work in progress....
|
||||
<P>
|
||||
|
||||
<h3>Synopsis.</H3>
|
||||
<P>
|
||||
<code>-a<inetaddr> -l<ttydevice> <node> ...</code><br>
|
||||
<code>-n<phone> </code>forced phone number<br>
|
||||
<code>-l<ttydevice> </code>forced tty device<br>
|
||||
<code>-t<tcpmode> </code>telnet TCP/IP mode, must be one of ifc|itn|ibn, forces TCP/IP<br>
|
||||
<code>-a<inetaddr> </code>supply internet hostname if not in nodelist<br>
|
||||
<code> <node> </code>should be in domain form, e.g. f11.n22.z3<br>
|
||||
<code>-h </code>show this help message<br>
|
||||
<br>
|
||||
or: <code>mbcico tsync|yoohoo|**EMSI_INQC816|-t ibn|-t ifc|-t itn</code> (this is answer mode)
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbcico</strong> stands for MBse "Internet - Fidonet Copy In /Copy Out",
|
||||
this is a FidoNet(r) compatible transport agent. It is based on <strong>
|
||||
ifcico</strong> written by Eugene G. Crosser, <crosser@average.org>,
|
||||
2:5020/230@FidoNet. I changed the name of the program to make the difference
|
||||
between <strong>ifcico</strong> and <strong>mbcico</strong>. Nowadays it is
|
||||
quite different then ifcico.
|
||||
<P>
|
||||
Currently it supports FTS-0001, YooHoo/2U2 and EMSI handshake protocols,
|
||||
Xmodem, Telink, Modem7, Hydra with zlib compression extension (FSP-xxxx),
|
||||
SEAlink with and without overdrive and crash recovery,
|
||||
Bark file and update requests, WaZoo protocols: DietIFNA,
|
||||
plain Zmodem (aka ZedZip, EMSI flag "ZMO") and ZedZap, WaZoo file and
|
||||
update requests (nodelist flag should be XA). WaZoo file and update requests
|
||||
do also work with FTS-0001 sessions, this is supported by several well known DOS
|
||||
mailers also.
|
||||
Password protected requests and update requests are implemented.
|
||||
<P>
|
||||
There is also a special protocol optimized to use over TCP/IP connections,
|
||||
contributed by Stanislav Voronyi <stas@uanet.kharkov.ua>, it is
|
||||
identified by EMSI proto code TCP (not registered) and nodelist flag IFC.
|
||||
The default port is 60179. A telnet variant is installed at port 60177, the
|
||||
nodelist flag is ITN:60177. The port number is needed because the default port
|
||||
in the nodelist is port 23.
|
||||
<P>
|
||||
There is also a <strong>Binkp/1.1</strong> implementation, this is a
|
||||
bi-directional TCP/IP protocol.
|
||||
This protocol is prefferred over the IFC protocol because it is
|
||||
more efficient. Nodelist flag is IBN, the default port is 24554, and the
|
||||
nodelist request flag is XX. This binkp implementation uses zlib packet
|
||||
compression opt PLZ (FSP-1032) to increase the transfer speed and to lower
|
||||
the network bandwith usage. There is also support for the stream compression
|
||||
modes GZ and BZ2 (compatible with binkd).
|
||||
<P>
|
||||
Outbound directory structure is BinkleyTerm compatible, with domains and
|
||||
point subdirectories (full 5d). There are separate "protected" and
|
||||
"unprotected" inbound directories for the incoming sessions with the nodes
|
||||
that are in your setup. Files received during outbound sessions are always
|
||||
stored in the "protected" inbound.
|
||||
<P>
|
||||
"Magic" file request processors are executable files placed in the "magic"
|
||||
directory. If a request is made for a file with matching name, the
|
||||
executable from the "magic" directory is run, and its stdout output is mailed
|
||||
to the requestor. Full requestor's address, in the form of "John Smith of
|
||||
1:234/56/7" is passed to the executable in the command line. An example of
|
||||
such file is on my system, the filename in the magic directory is <b>STATUS</b>.
|
||||
<pre>
|
||||
echo " Hello $1 $2,"
|
||||
echo ""
|
||||
echo " Status report for MBSE BBS Development"
|
||||
echo " --------------------------------------"
|
||||
echo ""
|
||||
echo "Date : `date`"
|
||||
echo "System: `uname -mrs`"
|
||||
echo "Uptime: `uptime`"
|
||||
echo ""
|
||||
echo "`df -T`"
|
||||
echo ""
|
||||
echo "`free`"
|
||||
echo ""
|
||||
echo "Gtx, Michiel Broek"
|
||||
</pre>
|
||||
If you file request STATUS from my system you will get something like:
|
||||
<pre>
|
||||
Hello John Doe,
|
||||
|
||||
Status report for MBSE BBS Development
|
||||
--------------------------------------
|
||||
|
||||
Date : Sat Nov 8 17:29:07 CET 2003
|
||||
System: Linux 2.4.20 i586
|
||||
Uptime: 17:29:07 up 88 days, 20:02, 1 user, load average: 0.00, 0.00, 0.00
|
||||
|
||||
Filesystem Type 1k-blocks Used Available Use% Mounted on
|
||||
/dev/hda2 ext3 5921096 3405184 2210276 61% /
|
||||
/dev/hdb1 ext3 6198404 5133056 750476 88% /opt
|
||||
|
||||
total used free shared buffers cached
|
||||
Mem: 94280 91360 2920 0 13152 46276
|
||||
-/+ buffers/cache: 31932 62348
|
||||
Swap: 136512 32380 104132
|
||||
|
||||
Gtx, Michiel Broek
|
||||
</pre>
|
||||
|
||||
Non-executable
|
||||
files in the magic directory contain the full names to magic filenames. The
|
||||
magic NODELIST can thus point to the full path and filename of your latest
|
||||
nodelist. These magic names are automatic maintained by the <strong>mbfido</strong>
|
||||
program when the magic name is set in the .tic file that you receive.
|
||||
<P>
|
||||
To run <strong>mbcico</strong> in master mode, you need to make dialout
|
||||
devices read/writeable for <strong>mbcico</strong>, and do the same for
|
||||
the directory where your uucp locks are created (usually /var/locks).
|
||||
<P> <P>
|
||||
|
||||
<h3>Answer Mode.</h3>
|
||||
<P>
|
||||
To make <strong>mbcico</strong> work in answer mode, you need <strong>
|
||||
mgetty</strong> written by Gert Doering. <strong>mbcico</strong> must be
|
||||
started with one of the following parameters:
|
||||
<P><PRE>
|
||||
FTS-0001 call: "/opt/mbse/bin/mbcico tsync"
|
||||
FTS-0006 call: "/opt/mbse/bin/mbcico yoohoo"
|
||||
EMSI call: "/opt/mbse/bin/mbcico **EMSI_....."
|
||||
</PRE><P>
|
||||
In the latter case the received EMSI packet should be passed whitout trailing
|
||||
CR). To make this work <strong>mgetty</strong> must be compiled with the
|
||||
-DFIDO option. Other getty programs might work.
|
||||
<P>
|
||||
To answer TCP/IP calls the following lines should be added to /etc/inetd.conf:
|
||||
<P><PRE>
|
||||
binkd stream tcp nowait mbse /opt/mbse/bin/mbcico mbcico -t ibn
|
||||
fido stream tcp nowait mbse /opt/mbse/bin/mbcico mbcico -t ifc
|
||||
tfido stream tcp nowait mbse /opt/mbse/bin/mbcico mbcico -t itn
|
||||
</PRE><P>
|
||||
If your system uses xinetd the file /etc/xinetd.d/mbsebbs could be:
|
||||
<P><PRE>
|
||||
#:MBSE BBS services are defined here.
|
||||
|
||||
service binkp
|
||||
{
|
||||
socket_type = stream
|
||||
protocol = tcp
|
||||
wait = no
|
||||
user = mbse
|
||||
instances = 10
|
||||
server = /opt/mbse/bin/mbcico
|
||||
server_args = -t ibn
|
||||
}
|
||||
|
||||
service tfido
|
||||
{
|
||||
socket_type = stream
|
||||
protocol = tcp
|
||||
wait = no
|
||||
user = mbse
|
||||
instances = 10
|
||||
server = /opt/mbse/bin/mbcico
|
||||
server_args = -t itn
|
||||
}
|
||||
|
||||
service fido
|
||||
{
|
||||
socket_type = stream
|
||||
protocol = tcp
|
||||
wait = no
|
||||
user = mbse
|
||||
instances = 10
|
||||
server = /opt/mbse/bin/mbcico
|
||||
server_args = -t ifc
|
||||
}
|
||||
</PRE><P>
|
||||
In the file /etc/services the following lines must be present:
|
||||
<P><PRE>
|
||||
binkd 24554/tcp # mbcico IBN mode
|
||||
fido 60179/tcp # mbcico IFC mode
|
||||
tfido 60177/tcp # mbcico ITN mode
|
||||
</PRE>
|
||||
<P> <P>
|
||||
|
||||
|
||||
<h3>Calling Mode.</h3>
|
||||
<P>
|
||||
You never need to call nodes with <b>mbcico</b> by hand, <b>mbtask</b> will
|
||||
start <b>mbcico</b> with the right commandline.<BR>
|
||||
<B>Note:</B> you should not call nodes with mbcico directly, let
|
||||
<b>mbtask</b> do the calling.
|
||||
If you want to call a node make a <a href="mbout.html">poll</a> command.
|
||||
<P> <P>
|
||||
|
||||
<h3>Environment.</H3>
|
||||
<P>
|
||||
In order to run the mbcico you need to set one global environment variable
|
||||
<strong>$MBSE_ROOT</strong>
|
||||
This variable must point to the root of the bbs directoy structure.
|
||||
<P> <P>
|
||||
|
||||
<H3>Return Codes.</H3>
|
||||
<P>
|
||||
<pre>
|
||||
0 - No errors
|
||||
1..32 - OS errors, SIGHUP, SIGKILL, etc.
|
||||
100 - Commandline error.
|
||||
101 - Configuration error.
|
||||
103 - Disk full.
|
||||
108 - File transfer error.
|
||||
111 - Node not in nodelist.
|
||||
112 - Node may not be called (Hold, Down, not ZMH).
|
||||
113 - Could not make connection.
|
||||
114 - Cannot open tty port.
|
||||
115 - Node is locked.
|
||||
116 - No IP address.
|
||||
117 - Unknown session type.
|
||||
118 - Not Zone Mail Hour.
|
||||
119 - Modem error.
|
||||
120 - Not port available.
|
||||
121 - Session error.
|
||||
122 - EMSI session error.
|
||||
123 - FTSC session error.
|
||||
124 - Wazoo session error.
|
||||
125 - YooHoo session error.
|
||||
126 - Outbound scan error.
|
||||
127 - Cannot poll.
|
||||
</pre>
|
||||
These codes are also stored in status files for nodes, with the extension
|
||||
of ".sts". These are small datafiles containing three decimal numbers.
|
||||
<ol>
|
||||
<li>Time retry code, this is the next call attempt time. This is an unsigned
|
||||
long representing the number of seconds since the epoch. Before this time
|
||||
the node may not be called. This is set after a failed call, a random time
|
||||
in the near future is selected.
|
||||
<li>Retries, this is the number of consequtive call attempts made that returned
|
||||
"call failed" or other errors. This field is zeroed when the call succeeds and
|
||||
when a new "poll" is created. If the value is 30, the node won't be called
|
||||
anymore.
|
||||
<li>Code, this is the return code of the last attempt.
|
||||
</ol>
|
||||
<p> <p>
|
||||
|
||||
<h3>Configuration.</H3>
|
||||
<P>
|
||||
The behaviour of mbcico can be configured with <strong>mbsetup</strong>,
|
||||
section 1.14 If something doesn't do what you want, set the debug on for
|
||||
that problem. This will produce huge logfiles, but also a lot of information.
|
||||
Important flags are Device IO, EMSI debug, File forward, Locking, Outboundscan
|
||||
and Session.
|
||||
<P> <P>
|
||||
|
||||
<h3>Bugs.</H3>
|
||||
<P>
|
||||
Incoming calls from McMail mailers, McMail is quite hasty
|
||||
to establish an EMSI session, and times out in less than a second. So
|
||||
if your system is heavy loaded, or not too fast, McMail cannot connect
|
||||
with your system. This is a known problem with McMail 1.0 and older,
|
||||
later versions are ok.
|
||||
<P> <P>
|
||||
|
||||
<H3>Authors.</H3>
|
||||
<P>
|
||||
<pre>
|
||||
Eugene G. Crosser <crosser@average.org> Orginal ifcico.
|
||||
Stanislav Voronyi <stas@uanet.kharkov.ua> TCP/IP code.
|
||||
Martin Junius Rewrite of opentcp().
|
||||
Omen Technology Inc Zmodem protocol.
|
||||
Arjen G. Lentz, Joaquim H. Homrighausen Hydra transfer protocol.
|
||||
Cristof Meerwald Implementation of Hydra in ifcico.
|
||||
P. Saratxaga Tty driver code, yoohoo extensions.
|
||||
Dima Maloff Binkp protocol.
|
||||
Michiel Broek Rewrite for MBSE BBS.
|
||||
</pre>
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
64
html/programs/mbdiff.html
Normal file
64
html/programs/mbdiff.html
Normal file
@@ -0,0 +1,64 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbdiff.html,v 1.6 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbdiff - Nodelist difference file processor.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 30-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mbdiff - Nodelist difference file processor.</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbdiff</strong> [nodelist] [nodediff] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbdiff</strong> applies a (compressed) nodediff file against the
|
||||
nodelist of the week before to create a new nodelist. The result is a new
|
||||
plain nodelist and a nodelist compressed with zip.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environmet.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbdiff</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbdiff</strong> [nodelist] [nodediff]</code> The nodelist must be the full
|
||||
path and filename without the dot and daynumber extension. The nodediff is
|
||||
the full path and filename to the (compressed) nodediff file fitting on the
|
||||
latest nodelist. It is adviced to make a seperate working directory where
|
||||
you keep the nodelists. Don't do this in your normal nodelist directory.
|
||||
When the operation is successfull, the new nodelist is in the working directory
|
||||
and the old list is removed. A compressed version of the nodelist is also
|
||||
placed in the working directory. From here you can hatch the new compressed
|
||||
nodelist with the <strong>mbfido</strong> program.
|
||||
<P> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>-quiet</strong></code> - supress screen output, this switch is needed when
|
||||
<strong>mbdiff</strong> runs on the background.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
277
html/programs/mbfido.html
Normal file
277
html/programs/mbfido.html
Normal file
@@ -0,0 +1,277 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbfido.html,v 1.10 2005/08/26 18:26:38 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbfido - The Fidonet mail and files processor.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align=right><h5>Last update 26-Aug-2005</h5></div>
|
||||
<div align=center><H1>mbfido, the fidonet mail and files processor.</H1></div>
|
||||
|
||||
<h3>Synopsis.</H3>
|
||||
<P>
|
||||
<code>mbfido [command(s)] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbfido</strong>
|
||||
is the program to process fidonet mail and files. In order to run mbfido
|
||||
you must first start <strong>mbtask</strong>,
|
||||
this is the deamon which controls all bbs activities. To prevent that
|
||||
<strong>mbfido</strong> will run more than once at the same time a lock
|
||||
is placed in the protected inbound with the pid of the running
|
||||
<strong>mbfido</strong> program. The gateway to and from internet is also
|
||||
handled by <strong>mbfido</strong>.
|
||||
<P> <P>
|
||||
|
||||
<H3>Specifications.</H3>
|
||||
<p>
|
||||
The recognized mail packets are type 2+ following the FSC-0039 standard with
|
||||
a fallback to the old stone age packets.
|
||||
Can handle messages of maximum 429467295 bytes, or less if you have less
|
||||
memory available, the practical limit is about 1 Meg. Note that most mailprocessors
|
||||
are only guaranteed to work to maximum 16 KBytes.
|
||||
Recent experiments in the LINUX echo show that this is still true,
|
||||
although most tossers seem to process mail up to 32 KBytes.
|
||||
<P> <P>
|
||||
|
||||
<H3>Tossing Mail.</H3>
|
||||
<P>
|
||||
First make sure you have the necessary message areas in your setup. At least
|
||||
you need the badmail and dupemail areas and a netmail area for each network
|
||||
you participate in. If you don't create badmail and dupemail areas then
|
||||
bad (unknown area etc) and dupes are lost and you cannot check the reason why.
|
||||
If you don't create the netmail areas for each network, then netmail to your
|
||||
system will dissapear. It is not possible to "retoss" the badmail yet after
|
||||
you have created any missing echomail areas.
|
||||
<P>
|
||||
To prevent .pkt name collision the toss of incoming mail is done in parts.
|
||||
The first run is to process all uncompressed mailpackets and add mail to the
|
||||
outbound. Then each compressed ARCmail archive will be uncompressed and
|
||||
processed and mail will be imported and forwarded as necessary. During all
|
||||
these passes all filenames are sorted by date and time, the oldest files are
|
||||
processed first.
|
||||
<P>
|
||||
The recognized mail packets are type 2+ following the FSC-0039 standard with
|
||||
a fallback to the old stone age packets. The packets are checked for being
|
||||
addressed to one of your own aka's and for a correct password. The
|
||||
password check may be switched off in the nodes setup. After all the packet
|
||||
header checks the messages will be extracted from the packet file.
|
||||
<P>
|
||||
When messages are extracted from the packets, the date format is checked for
|
||||
Year2000 bugs from other tossers. Several checks are done by ideas of Tobias
|
||||
Ernst of 2:2476/418. It is also possible to run the <strong>pktdate</strong>
|
||||
utility before each packet will be processed. Whatever date format us used in
|
||||
the original message, <strong>mbfido</strong> will always rewrite the date
|
||||
field in the right FTS-0001 format.
|
||||
<P>
|
||||
If the message is a netmail the message is checked for DOMAIN, INTL, FMPT and
|
||||
TOPT kludges so that full 4d or 5d addressing will be possible. Then a check
|
||||
is done if this netmail is addressed to one of our aka's. If it's addressed to
|
||||
"sysop" or "postmaster" the name is replaced with the sysop's name. If the
|
||||
message is addressed to one of the names defined in the service setup, that
|
||||
mail will be handled by the service manager, ie. given to areamgr, filemgr or
|
||||
send further as email to your local system.
|
||||
<BR>
|
||||
Then the message is checked if it is addressed to an existing bbs user, and if
|
||||
so it will be imported into the netmail area of the main zone of the bbs.
|
||||
If it's not addressed to a bbs user, the message will be readdressed to the
|
||||
sysop. If the message is not for one of our aka's the message will be put in the
|
||||
mailqueue for further routing.
|
||||
<P>
|
||||
If the message is a echomail message it will be checked for being a duplicate by
|
||||
storing the CRC32 value of the AREA: line, message subject, origin line,
|
||||
message date and msgid kludge and testing if that CRC32 value exists in the
|
||||
echomail duplicate database. If there is no msgid in the message, the whole
|
||||
message body will be include to complete the CRC32 dupe check.
|
||||
Also the existance of the echomail area is checked and the node must be linked to that area.
|
||||
If the message is not in a passthru area and is not a duplicate it
|
||||
is finally imported in the message base.
|
||||
After that is the message will be forwarded to downlinks
|
||||
by adding the message to the mailqueue.
|
||||
<P> <P>
|
||||
|
||||
<h3>Adding mail and files to the outbound.</h3>
|
||||
<P>
|
||||
Adding mail and file to the outbound is done in two passes. The first pass is to put all
|
||||
outgoing mail into the ~/var/queue/z.n.n.p directory, the last letters are
|
||||
replaced by the digits of the nodenumber.
|
||||
The extension can be qqq for packed mail, nnn for normal unpacked mail, hhh for
|
||||
hold unpacked mail and ccc for crash unpacked mail. Adding mail and files to
|
||||
this directory can allways be done, even if one of the nodes you are adding mail
|
||||
for is having a mail session with your system. This is a safe operation.<br>
|
||||
In the second pass, these temp files are really added to the outbound, but
|
||||
only if the destination node is not locked, ie. there is no current mailsession
|
||||
with that node. If there is a mail session going, these temp files will stay in
|
||||
the temp directory and are added to the outbound in a later run of
|
||||
<strong>mbfido</strong>. If adding the mail to the outbound succeeds
|
||||
the temporary files and directory is removed.
|
||||
<P> <P>
|
||||
|
||||
<H3>Alias file.</H3>
|
||||
<P>
|
||||
If the file /opt/mbse/etc/aliases exists, mbfido will try to fetch ftn-style
|
||||
aliases from there.
|
||||
If "from" address of a message from FidoNet matches <b>right</b> side
|
||||
of some entry in alias file, then the Reply-To: header is created
|
||||
in the RFC message with the name part taken from the left side of the
|
||||
sysalis entry and domain part taken from myfqdn (below). E.g., if a
|
||||
fidonet message comes from "John Smith of 1:234/567.89@fidonet" and
|
||||
there is an entry in the sysalias file:
|
||||
<pre>
|
||||
"jsmith: John.Smith@p89.f567.n234.z1.fidonet.org"
|
||||
</pre>
|
||||
and Domain name value is "mbse.nl", then the resulting message will
|
||||
contain a line: "Reply-To: jsmith@mbse.nl".
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbfido</strong> areas</code>
|
||||
This command will check all file and mail groups if areas files are defined and
|
||||
if the setting <b>Auto change</b> is set to Yes. Then the areafile is read and
|
||||
the areas in that file are compared with the defined areas. Missing areas are
|
||||
created and areas not in the areafile are removed or blocked depending if there
|
||||
are files or messages present in these areas. This is also a good command to
|
||||
create large bulks of new areas on your system.
|
||||
|
||||
<P>
|
||||
<code><strong>mbfido</strong> mail <recipient></code>
|
||||
This command is used by your MTA to deliver email addressed to for example
|
||||
Michiel_Broek@f2802.n280.z2.fidonet.org
|
||||
|
||||
<P>
|
||||
<code><strong>mbmail</strong> <recipient></code>
|
||||
This is the same as above.
|
||||
|
||||
<P>
|
||||
<code><strong>mbfido</strong> notify <nodes></code>
|
||||
This command will send notify messages to all nodes in your setup which
|
||||
have the notify option set to on. If you enter nodes as option you may use
|
||||
wilcards, ie 2:*/* to send messages to all nodes in zone 2. If you specify
|
||||
exactly one node, messages will be generated even if that node has the
|
||||
notify function off. From cron you should not specify any nodes, this will
|
||||
just send to all your links the information about their setup. Each node
|
||||
will receive a status report for files and mail, and area list for all
|
||||
file areas and mail areas to each aka a node has, and a flow report for
|
||||
mail for each aka.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> roll</code>
|
||||
This command will only do something if a new week or month has begun.
|
||||
If this is true the statistic records in several databases are updated.
|
||||
You should run this command each midnight from cron to be sure that this when it is
|
||||
time to do so. This command is always executed before one of the scan, toss or tic commands so
|
||||
if you don't do this in cron, it will still happen.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> scan</code>
|
||||
Scan for new messages entered at the bbs or by other utilities. If the file
|
||||
~/tmp/echomail.jam or ~/tmp/netmail.jam exists,
|
||||
mbfido will only scan the messages in areas which are
|
||||
pointed at in this file. This is a lot faster then a full mailscan.
|
||||
If it is not present, all messagebases are scanned
|
||||
to see if there is a new message. If you specify
|
||||
<strong>-full</strong> on the commandline a full messagebase scan is forced.
|
||||
It is wise to do this sometimes, on my bbs I run this once a day.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> tag</code>
|
||||
The command will create tag- and areas files in the doc directory for each group of
|
||||
mail and files.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> test <node></code>
|
||||
This is for testing of the mail routing. The node on the commandline must be in
|
||||
the format f28.n280.z2 etc. The results are printed on the tty. If you have
|
||||
debug logging on in menu 1.5.16 items 17 and 18, then all needed debug
|
||||
information is written to the logfile. You can use this to debug your routing.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> tic</code>
|
||||
Process incoming files accompanied with .tic control files. Several actions can
|
||||
take place on the incoming file before they are imported in the BBS areas.
|
||||
Options are rearchiving, replacing banners (with your add), check for DOS
|
||||
viruses, running scripts for certain filename patterns, send these files to
|
||||
other nodes etc. All options can be defined for each area. If as a result from
|
||||
one of the actions there are new files hatched, for example after processing
|
||||
a nodelist difference file which created a new nodelist, the .tic processing
|
||||
will start again, until there is really nothing more to do.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> toss</code>
|
||||
Toss incoming fidonet netmail and or echomail. By default mail in the protected
|
||||
inbound directory will be processed, uncompressed .pkt files and compressed
|
||||
arcmail bundles are recognized, filename case doesn't matter.
|
||||
<P>
|
||||
<code><b>mbfido</b> news</code> Scan all defined newsgroups for new newsarticles.
|
||||
New articles are fetched from the newsserver and stored in your messagebase and
|
||||
send to your up- and downlinks. This is for use with an NNTP gateway.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> uucp</code>
|
||||
This will read a standard a newsbatch from stdin and gate the articles
|
||||
to Fidonet and the local message base. This is for use with an UUCP gateway, this
|
||||
mode should be called by uuxqt. The newsbatch may be compressed or uncompressed or
|
||||
a single news article.
|
||||
<P>
|
||||
<code><strong>mbnews</strong></code>
|
||||
This is an alternative to <strong>mbfido uucp -quiet</strong>.
|
||||
<P> <P>
|
||||
|
||||
<h3>Options.</h3>
|
||||
<P>
|
||||
<code><strong>mbfido</strong> [command] -nocrc</code>
|
||||
Disable CRC checking of incoming TIC files. Only use this if you know what
|
||||
you are doing.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> scan -full</code>
|
||||
Force scanning of all message bases for new entered mail. You need this if
|
||||
mail in entered with other editors then from mbse. Also, running it once a
|
||||
day is adviced to catch any missed messages.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> news -learn</code>
|
||||
Scan the newsserver for news articles, and update the news dupes database only.
|
||||
Use this switch if you start using mbfido to gate news articles for the first time.
|
||||
Articles will not be gated with this switch, mbfido will just learn which articles
|
||||
already exist. Normally you only need to use this switch once.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> [command] -nodupe</code>
|
||||
Disable checking for duplicate's. Normally you should not use this switch.
|
||||
This switch doesn't work with the news command, only for echomail and tic files.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> [command] -quiet</code>
|
||||
Quiet mode, all output to the current tty is supressed. Use this flag if
|
||||
you toss mail from a script (started by cron) after mail is received.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> toss -unsecure</code>
|
||||
Toss mail without checking if the echomail is for your own system en without
|
||||
checking if the sending node is connected to your system. Nodes who are
|
||||
excluded from a certain echo, can stil not enter messages in that echo.
|
||||
<P>
|
||||
<code><strong>mbfido</strong> [command] -unprotect</code>
|
||||
Toss from the unprotected inbound directory. The default is to toss from the
|
||||
protected inbound directory.
|
||||
<P> <P>
|
||||
|
||||
<h3>Environment.</H3>
|
||||
<P>
|
||||
In order to run the bbs you need to set one global environment variable
|
||||
<strong>$MBSE_ROOT</strong>
|
||||
This variable must point to the root of the bbs directoy structure.
|
||||
<P> <P>
|
||||
|
||||
<h3>Bugs.</H3>
|
||||
<P>
|
||||
There are still bugs, this program is under development.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
192
html/programs/mbfile.html
Normal file
192
html/programs/mbfile.html
Normal file
@@ -0,0 +1,192 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbfile.html,v 1.16 2007/06/08 19:02:19 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<TITLE>MBSE BBS Programs - mbfile - File database maintenance program.</TITLE>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META NAME="Language" content='en'>
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 08-Jun-2007</h5></div>
|
||||
<div align="center"><H1>mbfile - File database maintenance program.</H1></div>
|
||||
|
||||
<H3>Synopsys.</H3>
|
||||
<code><strong>mbfile</strong> [commands] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbfile</strong>
|
||||
is the filedatabase maintenance program for mbsebbs. In order to run mbfile you
|
||||
must have started <strong>mbsed</strong>,
|
||||
this is the deamon which controls all bbs activities.
|
||||
<P>
|
||||
The main purpose of <strong>mbfile</strong>
|
||||
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 <strong>mbfile</strong>
|
||||
from the crontab. example:
|
||||
<P><pre>
|
||||
30 05 * * * export MBSE_ROOT=/opt/mbse; /opt/mbse/bin/mbfile kill pack index -quiet
|
||||
</pre>
|
||||
Other functions in <b>mbfile</b> are meant to do manual maintenance such as
|
||||
adding, deleting or moving files.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run the bbs you need to set one global environment variable
|
||||
<strong>$MBSE_ROOT</strong>
|
||||
This variable must point to the root of the bbs directoy structure. The
|
||||
main configuration file <strong>config.data</strong>
|
||||
must exist in the subdirectory ~/etc.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbfile</strong> adopt <area> <file> "[description]"</code>
|
||||
Adopt a file to the filebase. The description is optional, but if present it
|
||||
should be enclosed in quotes. The optional description may be at most 255 characters.
|
||||
Default mbfile will try to use the FILE_ID.DIZ if this is present. The file to
|
||||
adopt needs to be in your current directory and will be copied to the new area.
|
||||
If you have virus scanners defined, the file will be checked for virusses.
|
||||
|
||||
<P>
|
||||
<code><strong>mbfile</strong> check [area]</code>
|
||||
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.
|
||||
If no area number is given, all areas are checked.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> delete <area> "<filemask>"</code>
|
||||
Mark file(s) in an area for later deletion. You can use wildcards, and if you do
|
||||
surround them with quotes to prevent shell expansion.
|
||||
The file is not removed until you run <strong>mbfile pack</strong>.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> import <area></code>
|
||||
Import files to the given area using files.bbs descriptions. There are two
|
||||
possibilities, import from CD-rom or just from a temporary directory.
|
||||
<UL>
|
||||
<LI>Import from a temporary directory: Put the files to import there including the
|
||||
files.bbs file.
|
||||
<LI>Import from CD-rom: Go into the directory on the CD
|
||||
where the files are. If the files.bbs is not in the same directory,
|
||||
you must enter the full filename and path where the files.bbs is with
|
||||
<b>mbsetup</b> 8.4.area.6.
|
||||
</UL>
|
||||
To start the import, type <code>mbfile import area</code> where area is the
|
||||
number of the destination filearea.
|
||||
The files are not checked for FILE_ID.DIZ inside the
|
||||
archives. If you have virus scanners defined, the files are checked for
|
||||
virusses before they are added the the bbs. If you don't want these fresh files
|
||||
to be announced, add the <code>-announce</code> option on the commandline. This
|
||||
may be a good idea if you migrate from another bbs system.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> index</code>
|
||||
Create fast filerequest index for the <strong>mbcico</strong> filerequest
|
||||
processor. In each directory with the downloadable files is also a
|
||||
<strong>files.bbs</strong> file written in msdos cr/lf format. This includes a
|
||||
download counter.
|
||||
Also, if defined, in each available download area for ftp/http, <b>00index</b>
|
||||
and <b>index.html</b> files are
|
||||
created, starting at the ftp pub directory. If the area contains gif or jpg
|
||||
images, thumbnails are created using the <b>convert</b> program if you have that
|
||||
installed. The thumbnails have the same filenames as the original images, only
|
||||
they start with a dot. The convert command is defined with <b>mbsetup</b> menu
|
||||
1.19.8, if you don't have it or don't want thumbnails, make that entry empty.
|
||||
The index command only rebuilds area index files (files.bbs, index.html and
|
||||
00index) when there was a change in the area.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> kill</code>
|
||||
Mark files to delete or move files in areas that have the <strong>download age</strong>
|
||||
set or the <strong>filedate age</strong> 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.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> list [area]</code>
|
||||
List all defined file areas, the number of files, the total size of the files
|
||||
and the primary group. If and area is given on the commandline, the files in
|
||||
that area are listed.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> move <from> <to> <file></code>
|
||||
This command will move a file from one area to another. No actions on the file
|
||||
are performed.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> pack</code>
|
||||
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 or with mbfile, they are still in your database and on disk
|
||||
until you run <strong>mbfile pack</strong>.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> rearc <area> "<filemask>"</code>;
|
||||
Re-archive file(s) in an file area to the archiver that must be set in the
|
||||
<a href="../setup/files.html">file area setup</a>.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> sort <area></code>
|
||||
Sort the files in area on the long filenames. The sort is case insensitive. When
|
||||
the sort is completed, the command <strong>mbfile index</strong> will automatic
|
||||
run to rebuild all indexes.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> toberep</code>
|
||||
Shows which files are to be reported. This lists only the files that are
|
||||
received during .tic processing, new uploaded files are not displayed. This list
|
||||
is automatic removed after newfiles are announced.
|
||||
See also <A HREF="mbtoberep.html">mbtoberep</A>.
|
||||
<P>
|
||||
|
||||
<code><strong>mbfile</strong> undelete <area> "<filemask>"</code>
|
||||
Mark a file that is marked for deletion to be available again, ie. undo the deletion
|
||||
mark. You can use wildcards, and if you do
|
||||
surround them with quotes to prevent shell expansion.
|
||||
<P> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbfile</strong> [command] -quiet</code>
|
||||
Quiet mode, no screen output. Use this switch if you run <strong>mbfile</strong> from the crontab.
|
||||
<P>
|
||||
<code><strong>mbfile</strong> [command] -announce</code>
|
||||
Announce mode, use this switch with the adopt and import commands to prevent
|
||||
that the added file(s) will be announced. This can be usefull if you add lots of
|
||||
files that you don't want to announce these as new files.
|
||||
<P>
|
||||
<code><strong>mbfile</strong> [command] -force</code>
|
||||
With the adopt, import and move commands files that already exist in the
|
||||
destination area are not overwritten. With this switch you can force to
|
||||
overwrite the existing file.
|
||||
<P>
|
||||
<code><strong>mbfile</strong> [command] -virus</code>
|
||||
Supress virus scanning of files during adopt or import. Use with care.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
68
html/programs/mbindex.html
Normal file
68
html/programs/mbindex.html
Normal file
@@ -0,0 +1,68 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbindex.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbindex - Nodelist Index Compiler.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 30-Jan-2001</h5></div>
|
||||
<div align="right"><H1>mbindex - Nodelist Index Compiler.</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbindex</strong> <options></code>
|
||||
<P> <P>
|
||||
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbindex</strong> is the nodelist index compiler. It will create
|
||||
an index file containing the sorted fidonet addresses as index file to the
|
||||
raw nodelists in the defined nodelist directory. Several other programs
|
||||
use this index file for fast retreival of data from the nodelists. Compiling
|
||||
new nodelist indexes can always be done, while compiling the result
|
||||
is stored in temporary index files and only after successfull compilation the
|
||||
original indexes are renamed and the temporary files get the normal names.
|
||||
The renamed (old) indexes stay on disk including the previous version of the
|
||||
old raw nodelist. They stay there in case some program had the nodelist or
|
||||
index still open. So in the nodelist directory there are current nodelists,
|
||||
previous
|
||||
nodelists, current indexes and previous indexes, and during compiling the
|
||||
temporary indexes. There is no need to manually remove (and not wise to do so)
|
||||
files from the nodelist directory.
|
||||
<P>
|
||||
The nodelists in the nodelist directory are the normal uncompressed nodelists
|
||||
in MS-DOS format (with CR/LF). The filename extensions must be two or 3 digits.
|
||||
So if you have a private pointlist named <strong>bestbbs.pts</strong> you
|
||||
will have to rename that to <strong>bestbbs.999</strong> to make it work.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbindex</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbindex</strong> -quiet</code> Quiet mode, no screen output. Use the switch
|
||||
if you run <strong>mbindex</strong> from a shellscript or from the crontab.
|
||||
<P> <P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
38
html/programs/mblang.html
Normal file
38
html/programs/mblang.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mblang.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mblang - Language Data Compiler.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 30-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mblang - Language Data Compiler</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mblang</strong> [language data file] [language source text]</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mblang</strong> compiles the source textfile to language datafile
|
||||
which is used by the <strong>mbsebbs</strong> program. You only need to
|
||||
use this program if you install a new language file. When you build the
|
||||
complete mbse bbs package, this command is run automatic for you.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
122
html/programs/mblogin.html
Normal file
122
html/programs/mblogin.html
Normal file
@@ -0,0 +1,122 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mblogin.html,v 1.8 2007/08/25 19:31:59 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mblogin - Unix login replacement for MBSE BBS.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<DIV align=right><h5>Last update 25-Aug-2007</h5></DIV>
|
||||
<DIV align=center><H1>mblogin - Unix login replacement for MBSE BBS.</H1></DIV>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mblogin</strong> [-p] [-h hostname] [user]</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mblogin</strong> replaces the standard Unix login program for MBSE BBS.
|
||||
You can use this program from <strong>mgetty</strong> for modem/ISDN access,
|
||||
or from <strong>inetd</strong> to allow telnet access.
|
||||
This program logs in the systems syslog facility because the normal login
|
||||
program does this too. It uses the file <code>/opt/mbse/etc/login.defs</code>
|
||||
for the behaviour you prefere. All options in this file are well commented. It uses
|
||||
the bbs user database to see who are allowed to login. Users can use their
|
||||
Fidonet name, Unix name or Handle. If the name is found in the userbase, the
|
||||
name is replaced with the real Unix name to do the password check and to start
|
||||
the <strong>mbsebbs</strong> program. If the user is not found in the user base,
|
||||
the user is asked if he wants to register as a new user. This behaviour can be
|
||||
turned off. If the user uses the name <strong>bbs</strong> he will start the
|
||||
<strong>mbnewusr</strong> program directly. All other users are not allowed to
|
||||
login, not even root. If you change it in the file
|
||||
<code>/opt/mbse/etc/login.defs</code> you may allow user <strong>mbse</strong>
|
||||
to login. I advice against it, you should use <strong>ssh</strong> if you want
|
||||
remote access to do maintenance.
|
||||
<P> <P>
|
||||
|
||||
<H3>How to use from inetd.</H3>
|
||||
<P>
|
||||
If your system is connected to the internet you may want to let users login
|
||||
using telnet. The changes you need to make are different for each operating
|
||||
system mbse supports. The right lines for your distribution should already
|
||||
be present, but they are not set active, in other words, you still need to
|
||||
make changes to allow telnet login to work.
|
||||
I will describe how to use it from inetd.
|
||||
When you make changes to your system to
|
||||
change the telnet login, make sure you are already logged into your system as root
|
||||
from another terminal. If you make a mistake and can't login anymore you will be
|
||||
glad that you are still logged in on another terminal. Here are the tested
|
||||
setups:
|
||||
<UL>
|
||||
<LI>GNU/Linux: edit the telnet line in /etc/inetd.conf:<BR>
|
||||
<code>telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -L /opt/mbse/bin/mblogin</code><br>
|
||||
After changing this file do a <b>kill -HUP pid</b> where pid is the pid of the
|
||||
inetd process.
|
||||
<LI>FreeBSD: edit the telnet line in /etc/inetd.conf:<BR>
|
||||
<code>telnet stream tcp nowait root /usr/libexec/telnetd telnetd -p /opt/mbse/bin/mblogin</code><br>
|
||||
After changing this file do a <b>kill -HUP pid</b> where pid is the pid of the
|
||||
inetd process.
|
||||
<LI>NetBSD: append a line in /etc/gettytab just below the line with the default
|
||||
entry:<br>
|
||||
<code>mbsebbs:cd:ck:np:lo=/opt/mbse/bin/mblogin:sp#38400:</code><br>
|
||||
The speed entry 38400 doesn't seem to be important.
|
||||
Then edit the telnet line in /etc/inetd.conf:<BR>
|
||||
<code>telnetd stream tcp nowait root /usr/libexec/telnetd telnetd -g mbsebbs</code><br>
|
||||
After changing this file do a <b>kill -HUP pid</b> where pid is the pid of the
|
||||
inetd process.
|
||||
</UL>
|
||||
Now you can test it with <code>telnet localhost</code> or from another machine
|
||||
with <code>telnet your.machine.com</code>. Check if you can still do other
|
||||
logins such as ssh, rlogin and login on local consoles.
|
||||
<P> <p>
|
||||
|
||||
<H3>How to use from xinetd.</H3>
|
||||
<P>
|
||||
This is how to use xinetd, Read the section above also.
|
||||
Here is a tested setups:
|
||||
This has to be done as root. You have to create a service under /etc/xinetd.d
|
||||
named telnet if you dont have it yet installed, if it is already installed just
|
||||
modify the server_args line to match this:
|
||||
<pre>
|
||||
server_args = -L /opt/mbse/bin/mblogin
|
||||
</pre>
|
||||
Your /etc/xinetd.d/telnet file should look something like this:
|
||||
<pre>
|
||||
service telnet
|
||||
{
|
||||
flags = REUSE
|
||||
log_on_failure += USERID
|
||||
socket_type = stream
|
||||
user = root
|
||||
server = /usr/sbin/telnetd
|
||||
server_args = -L /opt/mbse/bin/mblogin
|
||||
wait = no
|
||||
}
|
||||
</pre>
|
||||
This will replace the standard login program on xinetd systems to the mblogin
|
||||
program, so that next time someone logs into your bbs they will be presented the
|
||||
issue file on /opt/mbse/etc file and the login prompt for the BBS instead of the
|
||||
standard login prompt.
|
||||
<p> <p>
|
||||
|
||||
|
||||
<H3>How to use from mgetty</H3>
|
||||
<P>
|
||||
This is described with the setup for <A HREF="../mgetty.html">mgetty</A>.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
119
html/programs/mbmon.html
Normal file
119
html/programs/mbmon.html
Normal file
@@ -0,0 +1,119 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbmon.html,v 1.9 2003/11/08 19:57:26 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbmon - MBSE BBS Monitor.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align=right><h5>Last update 28-Aug-2003</h5></div>
|
||||
<div align=center><h1>mbmon - MBSE BBS Monitor</H1></div>
|
||||
|
||||
<H3>Sysnopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbmon</strong></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbmon</strong> is the monitor program so that you can see what is
|
||||
happening on your bbs. It can show all processes and actions of all programs,
|
||||
show system statitistics, disk useage, and the last callers list.
|
||||
<strong>mbmon</strong> must run on the same system where the bbs is. When
|
||||
started it will also report that the sysop is present on the system for chat so
|
||||
that users of your bbs can page you for a chat. If a user pages you, this will
|
||||
be shown in every screen of <strong>mbmon</strong> and a beep will sound every
|
||||
few seconds.<BR>
|
||||
<TABLE align=center width="90%" border=0 cellspacing=0 cellpadding=5>
|
||||
<TR>
|
||||
<TD align=center>
|
||||
<A HREF='../images/mbmon1.png'>
|
||||
<IMG border=0 SRC='../images/mbmon1-tn.png' ALT='A user is paging'></A><BR>
|
||||
<Div align='center'>Main menu, a user is paging.</Div>
|
||||
</TD>
|
||||
<TD align=center>
|
||||
<A HREF='../images/mbmon2.png'>
|
||||
<IMG border=0 SRC='../images/mbmon2-tn.png' ALT='chat with a user'></A><BR>
|
||||
<Div align='center'>Chat with a user.</Div>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbmon</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure.
|
||||
<P> <p>
|
||||
|
||||
<H3>Menu 1.</H3>
|
||||
<P>
|
||||
This screen shows the running bbs programs and what they are doing.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 2.</H3>
|
||||
<P>
|
||||
This screen displays the actual mbtask server status and some internal
|
||||
variables. The left side of the screen are more statistics and counters, the
|
||||
right side displays the actual bbs open status, Zone Mail Hour status, if
|
||||
Internet is alive, if internet is needed, if mbtask is internal running and the
|
||||
system load average. Consult this screen if you think mbse doesn't run.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 3.</H3>
|
||||
<P>
|
||||
This screen displays the filesystem usage. Removeable filesystems such as CD's are not displayed,
|
||||
only filesystems that the bbs could use.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 4.</H3>
|
||||
<P>
|
||||
This screen shows some bbs information.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 5.</H3>
|
||||
<P>
|
||||
This menus shows the lastcallers of the bbs. It shows the username, location,
|
||||
userlevel, the device they logged in from, the starttime, the duration, the
|
||||
number of calls, the linespeed and the actions they have done.
|
||||
The action fields mean:
|
||||
<b>H</b>idden, <B>D</b>ownload, <b>U</b>pload, <b>R</b>ead messages, <b>P</b>ost
|
||||
messages, <b>C</b>hat, <b>O</b>ffline reader, <b>E</b>xternal door.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 6.</H3>
|
||||
<P>
|
||||
Chat with any user. Using this menu you enter the chatserver and you can chat in
|
||||
any channel just as the users of your bbs can do. The chatserver works just like
|
||||
an IRC server. Type /HELP for help.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 7.</H3>
|
||||
<P>
|
||||
Respond to a sysop page. This is actually the same as chat with any user, the
|
||||
only difference is that you will join channel #sysop immediatly. If the user is
|
||||
not yet connected after his page, he will also be connected to the channel as
|
||||
soon as possible.
|
||||
<P> <P>
|
||||
|
||||
<H3>Menu 8.</H3>
|
||||
<P>
|
||||
This shows the software information.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
93
html/programs/mbmsg.html
Normal file
93
html/programs/mbmsg.html
Normal file
@@ -0,0 +1,93 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbmsg.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbmsg - Message Base Utility.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 30-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mbmsg - Message Base Utility</H1></div>
|
||||
|
||||
<H3>Sysnopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> [commands] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbmsg</strong>
|
||||
is the message base utility program for mbsebbs. In order to run mbmsg you
|
||||
must have started <strong>mbsed</strong>,
|
||||
this is the deamon which controls all bbs activities.
|
||||
<P>
|
||||
The main purpose of <strong>mbmsg</strong>
|
||||
is to link messages after tossing mail, and to maintain the size of the message
|
||||
bases and the age of the messages. The best way to do the maintenance is to
|
||||
run <strong>mbmsg</strong>
|
||||
from the crontab. example:
|
||||
<pre>
|
||||
30 05 * * * export MBSE_ROOT=/bbs; /bbs/bin/mbmsg kill pack link -quiet
|
||||
</pre>
|
||||
Another purpose is to automatic post messages in message areas. Echomail and
|
||||
netmail is possible.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbmsg</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> link</code> Link all messages by subject ignoring
|
||||
Re: in the subject lines. You should run this after tossing or scanning mail.
|
||||
<p>
|
||||
<code><strong>mbmsg</strong> kill</code> Kill messages in areas that have the
|
||||
<strong>age</strong> set or the <strong>maximum</strong> messages set.
|
||||
A setting of 0 is ignored. The messages are not removed from the message base,
|
||||
they are only marked as deleted.
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> pack</code> This command actualy removes the
|
||||
messages who have the deleted flag set.
|
||||
The lastread pointers are updated and the messages renumbered. After this
|
||||
command there is no way you can recover your messages, except from backups.
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> post <to> <#> <subj> <file> <flavor>
|
||||
</code> This command posts a message in numbered area. If a field
|
||||
consists of more then one word it must be surounded with quotes.
|
||||
The <strong>to </strong> field can be "Michiel Broek" for a full name or
|
||||
"Michiel_Broek@f16.n2801.z2.fidonet" for netmail addressing. Look out:
|
||||
you need underscore between the firstname and lastname, no spaces.
|
||||
Flavor can be one or more of the characters "c", "i", "h" or "p" to set the Crash,
|
||||
Immediate, Hold or Private flags.
|
||||
If no flavor is needed, use the - (minus sign) as a placeholder.
|
||||
<p> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> [command] -area <#></code>
|
||||
Process only one area <#> number.
|
||||
<P>
|
||||
<code><strong>mbmsg</strong> [command] -quiet</code> Quiet mode,
|
||||
no screen output. Use this switch if you run <strong>mbmsg</strong>
|
||||
from the crontab.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
68
html/programs/mbnntp.html
Normal file
68
html/programs/mbnntp.html
Normal file
@@ -0,0 +1,68 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbnntp.html,v 1.3 2005/08/26 21:29:37 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbnntp - News server.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 26-Aug-2005</h5></div>
|
||||
<div align="center"><H1>mbnntp - News server</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbnntp</strong></code> You should not run this from the
|
||||
commandline, instead it should be run by <b>inetd</b> or <b>xinetd</b>.
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbnntp</strong> is a RFC977 and RFC2980 compatible news server.
|
||||
The purpose is to make echomail available to newsreader clients so that bbs
|
||||
users can use their favourite newsreader to participate in echomail. It will
|
||||
not make your newsgroups available if you have any, the bbs user can get these
|
||||
directly from the internet. The bbs echomail areas are only made available if
|
||||
they have a valid newsgroup name set in the area setup. If this is not alread
|
||||
set, invent your own newsgroup name. For example the WWB echomail area MBSE
|
||||
could be set as fido.wwb.mbse, but you can use anything as long as it doesn't
|
||||
conflict with real newsgroups.
|
||||
<P>
|
||||
To use the server, the user must login in the
|
||||
news server with his bbs unix name and password, thus the user must exist on the
|
||||
bbs. The access to the areas is the same as if the user would be logged into the
|
||||
bbs.
|
||||
<P> <P>
|
||||
|
||||
<H3>Installation.</H3>
|
||||
<P>
|
||||
If installed from <b>inetd</b> add the following line to
|
||||
<code>/etc/inetd.conf</code>:
|
||||
<pre>
|
||||
nntp stream tcp nowait mbse /opt/mbse/bin/mbnntp mbnntp
|
||||
</pre>
|
||||
<P> <P>
|
||||
|
||||
<H3>Building.</H3>
|
||||
<P>
|
||||
If you did run <code>./configure --enable-newsgate</code> when you compiled the
|
||||
mbse package, <b>mbnntp</b> will be build as a not working program. This is
|
||||
intended to prevent loops between real news and echomail. With normal builds
|
||||
without <code>--enable-newsgate</code> (recommended) <b>mbnntp</b> will function
|
||||
as newsserver.
|
||||
<P>
|
||||
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
110
html/programs/mbout.html
Normal file
110
html/programs/mbout.html
Normal file
@@ -0,0 +1,110 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbout.html,v 1.8 2003/11/08 20:15:31 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbout - The Outbound Manager.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 17-Mar-2001</h5></div>
|
||||
<div align="center"><H1>mbout - The Outbound Manager</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbout</strong> [command] <params> <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbout</strong> is the outbound manager for MBSE BBS. It can ask
|
||||
information from the nodelists, create and remove polls, request and send files and
|
||||
display the outbound status. Most of the tasks such as create and remove
|
||||
polls should be done from the crontab.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbout</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbout</strong> att <node> <flavor> <file></code> will attach
|
||||
the specified file to the specified node. The node should be in the format
|
||||
f2802.n280.z2, flavor should be crash, immediate, normal or hold. Only the first
|
||||
letter of the flavor parameter is needed.
|
||||
If the node is not in the nodelist, the status is Down or Hold, then this command fails.
|
||||
To non-CM nodes you mus use the <strong>Immediate</strong> flavor if you want to send the file direct.
|
||||
The flavors Hold and Normal are still allowed. The file must be in the directory range
|
||||
from where file attaches are allowed.
|
||||
<P>
|
||||
<code><strong>mbout</strong> poll [node..node]</code> creates poll requests in the outbound
|
||||
for one or more nodes. The node should be in the format f2802.n280.z2. The semafore
|
||||
<strong>scanout</strong> is created so that the mailer will start calling.
|
||||
The mailer will handle the poll request as if it should deliver immediate mail,
|
||||
so the node will be called as long as the poll request exists, even to nodes which are not CM.
|
||||
The error counter for the node to poll will be reset to zero, so a node that was
|
||||
previous marked undialable will be called again.
|
||||
If a call to a node is successfull, the poll file will be removed by <strong>mbcico</strong>.
|
||||
If a node is not in the nodelist or has the status Down or Hold, no poll will be created for that node.
|
||||
<P>
|
||||
<code><strong>mbout</strong> stop [node..node]</code> removes poll requests that are
|
||||
leftover when polling nodes didn't succeed. There is no check if the node is
|
||||
in the nodelist or has the status Down or Hold, the poll is always removed.
|
||||
<P>
|
||||
<code><strong>mbout</strong> req <node> <file> [file..file]</code> creates
|
||||
filerequests to a node. One or more filenames may be given including wildcards.
|
||||
It is not possible to do update or password protected uploads yet. If there
|
||||
is already a requestlist for that node, the new requests will be added. This
|
||||
command does not call a node, you need to create a poll request to make the
|
||||
actual call. This is also practical if you want some files from your uplink,
|
||||
just make the requests and the actual request is send when your normal
|
||||
scheduled poll to your uplink is processed.
|
||||
<P>
|
||||
<code><strong>mbout</strong> reset [node..node]</code> resets the nodes "try"
|
||||
counter to zero. So if a node is undiable, the counter is 30 or more, then by
|
||||
resetting this counter that node will be called again. The outbound is rescanned
|
||||
after this command so that calling will start immediatly.
|
||||
<P>
|
||||
<code><strong>mbout</strong> stat</code> shows the status of the mailer outbound.
|
||||
This status is also written to the logfile.
|
||||
<P>
|
||||
<code><strong>mbout</strong> node <node></code> will show the nodelist information for
|
||||
a certain node.
|
||||
<P> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbout</strong> [commands] -quiet</code> will suppress screen output. This is
|
||||
usefull if you run <strong>mbout</strong> from the crontab or from background
|
||||
scripts.
|
||||
<P> <P>
|
||||
|
||||
<H3>Examples.</H3>
|
||||
<P>
|
||||
This is an example of crontab entries that writes the outbound status to the
|
||||
logfile and creates and stops polling of 2 nodes.<br>
|
||||
<pre>
|
||||
00 00 * * * export MBSE_ROOT=/opt/mbse; $MBSE_ROOT/bin/mbout stat -quiet
|
||||
00 01 * * * export MBSE_ROOT=/opt/mbse; $MBSE_ROOT/bin/mbout poll f98.n100.z92 f0.n100.z92 -quiet
|
||||
00 02 * * * export MBSE_ROOT=/opt/mbse; $MBSE_ROOT/bin/mbout stop f98.n100.z92 f0.n100.z92 -quiet
|
||||
</pre>
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
55
html/programs/mbpasswd.html
Normal file
55
html/programs/mbpasswd.html
Normal file
@@ -0,0 +1,55 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbpasswd.html,v 1.9 2005/08/27 12:06:48 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbuseradd - The useradd wrapper.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 27-Aug-2005</h5></div>
|
||||
<div align="center"><H1>mbpasswd - The password wrapper.</H1></div>
|
||||
|
||||
<H3>Description.</h3>
|
||||
<P>
|
||||
<strong>mbpasswd</strong> is the wrapper for the <strong>passwd</strong> program
|
||||
is present on all GNU/Linux systems. To use <b>passwd</b> to change the password of
|
||||
another user is only allowed by <b>root</b>. The mbpasswd program overcomes this limitation.
|
||||
The wrapper <b>mbpasswd</b> is run from the bbs by user <b>mbse</b> when a new
|
||||
user is being registered to set his password. It can also be started from the
|
||||
bbs when an existing user changes his password. If you as sysop use
|
||||
<strong>mbsetup</strong> to change a users password it will be used too.
|
||||
His password under Unix is then always the same as his password in the bbs program.
|
||||
This is necessary for the user to be able to get his email using the pop3 protocol.<P>
|
||||
You never need to run <strong>mbpasswd</strong> by hand, in fact it is protected so that
|
||||
it can only be started by the bbs or mbsetup.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
<strong>mbpasswd</strong> must be installed setuid root and setgid root, ls -la looks like this:<br>
|
||||
<pre>
|
||||
-rws--s--x 1 root root 6644 Jun 26 21:23 /opt/mbse/bin/mbpasswd*
|
||||
</pre>
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
Not mentioned here because <b>mbpasswd</b> is only called by other programs,
|
||||
running manually is not supported.
|
||||
<P>
|
||||
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
147
html/programs/mbsebbs.html
Normal file
147
html/programs/mbsebbs.html
Normal file
@@ -0,0 +1,147 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbsebbs.html,v 1.8 2005/09/03 14:25:39 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbsebbs - The main BBS program.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 03-Sep-2005</h5></div>
|
||||
<div align="center"><H1>mbsebbs - The main BBS program</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbsebbs</strong></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbsebbs</strong> is the main bbs program for the users.
|
||||
To be able to use the bbs, the bbs mustbe set open with <strong>mbstat open</strong>
|
||||
or users may not login. This is normally done at system boot.
|
||||
Also Zone Mail Hour is honored if the user logs in
|
||||
on a tty that has the <strong>honor ZMH</strong> flag set to true. If it
|
||||
is ZMH and the ZMH flag is true, the user will be kicked out of the bbs. You
|
||||
should only set this flag on the modem lines where you need to be available
|
||||
for ZMH if your "Fidonet" network requires that.
|
||||
<P>
|
||||
The first visible action is to show the logo.ans file. Because it is not
|
||||
known who is trying to login, you only need to place this file in the
|
||||
default language directory.
|
||||
<P>
|
||||
The next check is to see if the user is allowed to login on the tty he
|
||||
currently is on.
|
||||
If this tty is not available or is not in your setup, the user is kicked
|
||||
out. If he is allowed to login, a message is shown at which port he is on,
|
||||
unless you have turned this feature off in the setup.
|
||||
<P>
|
||||
If the user login is successfull, his favourite language will be loaded.
|
||||
Then it is checked if the user is the Sysop, if so, the Sysop flag is set.
|
||||
If the users Date of Birth is invalid, he is forced to enter the right
|
||||
Date of Birth.
|
||||
The next check is to see if the user has passed the expiry date, this is a
|
||||
usefull feature for systems with donating users.
|
||||
Finally the access limits are set for the user and time remaining for today and
|
||||
download limits are set.
|
||||
<P>
|
||||
After successfull login the user can be presented with a bunch of advertising
|
||||
screens. I will only name the screens without filename extension, as these
|
||||
screens are searched for in the following order;<br>
|
||||
<ol>
|
||||
<li>filename.ans in the users favourite language directory.
|
||||
<li>filename.ans in the default language directory.
|
||||
<li>filename.asc in the users favourite language directory.
|
||||
<li>filename.asc in the default language directory.
|
||||
<li>If nothing is found, nothing is displayed.
|
||||
</ol>
|
||||
Here is the list of displayed screens:
|
||||
<ol>
|
||||
<li><strong>mainlogo</strong>. Here you can put a logo or something.
|
||||
<li><strong>welcome</strong>. This screen can contain information about the session
|
||||
the user has, his download limits, time left etc.
|
||||
<li><strong>welcome1</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome2</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome3</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome4</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome5</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome6</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome7</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome8</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>welcome9</strong> is shown if the user has show bulletins set to true.
|
||||
<li><strong>birthday</strong> is shown if the user logs in at his birthday and if he
|
||||
has show bullentins set to true.
|
||||
<li><strong>dd-mm</strong> is shown if <strong>dd</strong> is the date of today and
|
||||
<strong>mm</strong> is the current month and if the user has show bulletins
|
||||
set to true.
|
||||
<li><strong>sec20</strong> is shown if the user has the security level in the
|
||||
filename, level 20 in this example. Als the display bulletins must be set to
|
||||
true.
|
||||
<li><strong>news</strong> is shown if the user has the display bulletins set to
|
||||
true.
|
||||
<li><strong>onceonly</strong> is shown only if the user has never seen this screen,
|
||||
the test is to compare the users last login date against the date of this file.
|
||||
</ol>
|
||||
<P>
|
||||
After all these screens the users Offline Reader areas are checked to see if
|
||||
you as sysop didn't change the message areas. If you made changes, the users
|
||||
setup is adjusted and he will be notified. This means he sees a list
|
||||
with deleted areas and new areas.
|
||||
<P>
|
||||
Next if the user has newmail scan set to true all message bases are checked to
|
||||
see if the user has new mail. This includes a check to see if he has Unix mail.
|
||||
If there is Unix mail, those mails are retrieved from the POP3 server and stored
|
||||
in his private mailbox.
|
||||
If there is new mail for the user, the user sees a list of areas with the messages
|
||||
in it and he is offered to read and reply these messages.
|
||||
<P>
|
||||
Then if the user has show newfiles set to true and he is not a new bbs user
|
||||
he will see a list of new files you have on your bbs. During this display
|
||||
he can tag files for later download.
|
||||
<P>
|
||||
The final setup is to set the users "do not disturb" flag and then the menu
|
||||
system is started. The menu system will run forever, until the user chooses
|
||||
to logoff, the connection is lost or his daily timelimit is reached. For the
|
||||
possibilities and setup of the menus see
|
||||
<A HREF="../menus/index.htm">MBSE BBS Menu System</A>
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbsebbs</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P>
|
||||
If the environment variable <strong>CONNECT</strong> is present, a log entry
|
||||
will be made with the connect speed.
|
||||
<P>
|
||||
If the environment variable <strong>CALLER_ID</strong> is present, a log entry
|
||||
will be made with the caller id.
|
||||
<P>
|
||||
The environment variable <strong>LOGNAME</strong> must contain the unix
|
||||
username. This is set by the <b>mblogin</b> program.
|
||||
<P>
|
||||
If the environment variable <strong>REMOTEHOST</strong> is present, a log entry
|
||||
will be made with the name or IP address of the remote host.
|
||||
<P>
|
||||
If the environment variable <strong>TERM</strong> is present, a log entry
|
||||
will be made with the terminal type of the remote user.
|
||||
<P>
|
||||
|
||||
<P> <P>
|
||||
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
49
html/programs/mbseq.html
Normal file
49
html/programs/mbseq.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbseq.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbseq - Sequence number creator.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 31-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mbseq - Sequence number creator</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbseq</strong></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbseq</strong> writes a eight character hexadecimal unique sequence
|
||||
number to the stdout. This number is received from <strong>mbsed</strong>
|
||||
which keeps track of the generated sequence numbers. This written number can
|
||||
be used in shell scripts to create unique filenames for Fidonet .pkt files,
|
||||
for example:
|
||||
<P>
|
||||
<code>
|
||||
cp temp.pkt `mbseq`.pkt
|
||||
</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Bugs.</H3>
|
||||
<P>
|
||||
Nah, it's only 50 lines code, what could go wrong?
|
||||
<P>
|
||||
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
62
html/programs/mbsetup.html
Normal file
62
html/programs/mbsetup.html
Normal file
@@ -0,0 +1,62 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbsetup.html,v 1.7 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbsetup - The Setup Program.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 05-May-2002</h5></div>
|
||||
<div align="center"><H1>mbsetup - The Setup Program</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbsetup</strong> [init]</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbsetup</strong> is the setup program for MBSE BBS. It should be run
|
||||
only by user <strong>mbse</strong> and it fails to start if you are not.
|
||||
If it is started with the optional paramater <b>init</b> only the databases are
|
||||
initialized. This is automagic done by <b>mbtask</b> when you start the system
|
||||
for the very first time. You should never need to use this switch.
|
||||
When <b>mbsetup</b> is started without arguments the databases will be checked
|
||||
and initialized before the main screen is displayed.
|
||||
Both methods are being used to make sure all needed databases excist.
|
||||
For a detailed description of all setup options see
|
||||
<A HREF="../setup/index.htm">MBSE BBS Setup Guide</A><br>
|
||||
<b>mbsetup</b> uses locking to protect the system databases. Some setup menus
|
||||
can only be entered if the bbs is free, ie. no users logged on, no mailer
|
||||
sessions, not tossing mail etc. If the bbs is free, then these menus can be
|
||||
entered and the bbs will be closed. No users can login, tossers do not run etc.
|
||||
Only mailer calls are still accepted. So be carefull not to stay too long in
|
||||
these menus, you are blocking normal bbs use. In the top status bar this
|
||||
situation is displayed.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbsetup</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory. If it is not present, ie you run
|
||||
<strong>mbsetup</strong> for the first time, a default
|
||||
<strong>config.data</strong> will be created. This will also happen with
|
||||
several other databases.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
79
html/programs/mbstat.html
Normal file
79
html/programs/mbstat.html
Normal file
@@ -0,0 +1,79 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbstat.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbstat - MBSE BBS Status Changer.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 07-Jul-2001</h5></div>
|
||||
<div align="center"><H1>mbstat - MBSE BBS Status Changer</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbstat</strong> [commands] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbstat</strong> changes the bbs status between open and close, can wait
|
||||
for all users to logoff and wait for critical utilities to stop their actions.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbstat</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbstat</strong> semafore scanout</code> will set the internal
|
||||
semafore <i>scanout</i> in the <b>mbtask</b> daemon. The following semafore's
|
||||
are valid: scanout, mailout, mailin, mbindex, reqindex, msglink.
|
||||
<P>
|
||||
<code><strong>mbstat</strong> close</code> will close the bbs for users.
|
||||
Users that are just logging in to the bbs will be thrown out after a short message.
|
||||
Users already logged in will be thrown out when they pass by a menu prompt.
|
||||
So users who are doing file transfers can finish their transfers before being disconnected.
|
||||
<P>
|
||||
<code><strong>mbstat</strong> open</code> opens the bbs for users.
|
||||
This should be run from one of the system startup scripts right after you started
|
||||
<strong>mbsed</strong>. If you installed everything as it should this
|
||||
command is already executed at system startup.
|
||||
<P>
|
||||
<code><strong>mbstat</strong> wait</code> will
|
||||
wait for the bbs to become free. This includes a check for utilities that
|
||||
do critical actions so they can finish their job without corrupting the bbs
|
||||
databases. The default is to wait 60 minutes. If the semafore
|
||||
<strong>upsdown</strong> exists it will wait only 30 seconds.
|
||||
<P>
|
||||
You should run <strong>mbstat close wait</strong> in your system shutdown script so
|
||||
that the system shutdown will wait for a clean shutdown of the bbs before
|
||||
the rest of your system goes down. If you installed everything as it should
|
||||
be then these commands are already installed in your system shutdown scripts.
|
||||
<P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbstat</strong> [command] -quiet</code> will supress screen output.
|
||||
This is good for using mbstat in scripts.
|
||||
<P>
|
||||
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
432
html/programs/mbtask.html
Normal file
432
html/programs/mbtask.html
Normal file
@@ -0,0 +1,432 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbtask.html,v 1.16 2008/02/10 13:29:42 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbtask - MBSE BBS Taskmanager.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 10-Feb-2008</h5></div>
|
||||
<div align="center"><H1>mbtask - MBSE BBS Taskmanager</H1></div>
|
||||
|
||||
<H3>Sysopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbtask</strong> [-nd]</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbtask</strong> is the taskmanager for the whole MBSE BBS system.
|
||||
This deamon keeps track of all client actions,
|
||||
does the logging for the clients, does database locking, authorizes clients,
|
||||
set/resets users "do not disturb flags", sends and receives chat messages,
|
||||
keeps track of Zone Mail Hour, the status of the mail and files in the outbound,
|
||||
and the BBS open/close status.
|
||||
Communication between <strong>mbsed</strong> and the client programs is done via Unix
|
||||
Datagram sockets. The protocol used to communicate between <strong>mbtask</strong>
|
||||
and the clients is explained later.
|
||||
This daemon also watches the semafore directory for some special files.
|
||||
It also starts programs when they are needed.
|
||||
The very first time <b>mbtask</b> is started it creates a default config.data and task.data,
|
||||
the main configuration and task configuration files.
|
||||
Then it calls <b>mbsetup init</b> to build the default databases.
|
||||
<b>mbtask</b> should be started at system boot so the bbs system will start working.
|
||||
The init script that is installed on your system will do that.
|
||||
<P>
|
||||
After startup and initalization <b>mbtask</b> runs internally once per second forever.
|
||||
If there is nothing to do then this time will slowly increase upto 5 seconds. This time will be reset
|
||||
to one second as soon as there is work to be done. The actual work is to check a number of external and
|
||||
internal semafore's and act on these.
|
||||
But before any program is started a number of things are checked:
|
||||
<OL>
|
||||
<LI>Check the system's load average. If it is too busy the processing of background
|
||||
tasks is suspended until your system load drops.
|
||||
The default setup is set at 1.50 but you can change that with mbsetup. Experience
|
||||
will learn what the best value will be and I need some feedback on that.<br>
|
||||
<LI>The UPS semafore <b>upsalarm</b> will be checked. This means that the system is running on
|
||||
battery power and no new jobs are started.
|
||||
<LI>The UPS semafore <b>upsdown</b> will be checked. This is the fatal one, if
|
||||
this one exists <b>mbtask</b> will try to stop all current running jobs.
|
||||
If there are no jobs left running then <b>mbtask</b> will stop itself.
|
||||
The upsdown semafore means that the system
|
||||
will shutdown and power off, that's why it's fatal and there is no way back.<br>
|
||||
<LI>The status of the bbs will be checked, is it open or closed. If it is closed, no
|
||||
jobs will be started.
|
||||
<LI>The Zone Mail Hour is checked. If ZMH begins the semafore's <b>zmh</b> is
|
||||
created.
|
||||
If ZMH ends the semafore <b>zmh</b> is removed.
|
||||
<LI>Each twenty seconds a ping is send to the IP addresses defined with <b>mbsetup</b> to
|
||||
check if the internet can be reached. If both ping addresses fail, it is assumed that
|
||||
the internet can't be reached. After a status change, the outbound will be
|
||||
scanned.
|
||||
<LI>Scan the mailer outbound for work. This builds a list of nodes with mail
|
||||
in the outbound and sets the necessary flags on nodes who may be called.
|
||||
If a node needs to be called, <b>mbtask</b> will spawn <b>mbcico</b> to
|
||||
call this node. The number of free modem and ISDN ports and the maximum
|
||||
number of TCP/IP sessions and already registered sessions, determine
|
||||
howmany sessions will be started. The sessions will be started at
|
||||
intervals of 20 seconds.
|
||||
It will also set a time when something will change for a node, ie. a zone
|
||||
mail hour is reached, or a mail window for a node with Txx flags is
|
||||
reached. Internally this scheduler runs at the UTC clock because Fidonet
|
||||
has all times defined in UTC.
|
||||
</OL>
|
||||
Each new minute the timestamp of semafore <b>mbtask.last</b> is updated so that you can check that
|
||||
<b>mbtask</b> is running. Also each minute is checked if the system configuration files are
|
||||
changed, is so they are reloaded. There is no need to stop and start <b>mbtask</b> if you made
|
||||
changes to the system configuration.
|
||||
Then all kind of internal semafore's will be checked. The commands that are executed have default
|
||||
values, but they can be changed wit mbsetup. The commands can be scripts as well.
|
||||
The checks and actions are:
|
||||
<P>
|
||||
<table border=1 bgcolor='#FFFF99' cellspacing=0 cellpadding=3>
|
||||
<tr>
|
||||
<th align=left bgcolor='#000080'><font color='#FFFFFF'>Semafore</font></th>
|
||||
<th align=left bgcolor='#000080'><font color='#FFFFFF'>Speed</font></th>
|
||||
<th align=left bgcolor='#000080'><font color='#FFFFFF'>Tasktype</font></th>
|
||||
<th align=left bgcolor='#000080'><font color='#FFFFFF'>Depends on</font></th>
|
||||
<th align=left bgcolor='#000080'><font color='#FFFFFF'>Job to run</font></th>
|
||||
</tr>
|
||||
<tr><td>mailout</td><td>Fast</td><td>mbfido</td><td>Max. 1 mbfido task</td><td>mbfido scan web -quiet</td></tr>
|
||||
<tr><td>mailin</td><td>Fast</td><td>mbfido</td><td>Max. 1 mbfido task</td><td>mbfido tic toss web -quiet</td></tr>
|
||||
<tr><td>newnews</td><td>Fast</td><td>mbfido</td><td>Max. 1 mbfido task</td><td>mbfido news web -quiet</td></tr>
|
||||
<tr><td>mbindex</td><td>Fast</td><td>mbindex</td><td>No other tasks</td><td>mbindex -quiet and if exist: goldnode</td></tr>
|
||||
<tr><td>msglink</td><td>Fast</td><td>mbfido</td><td>No other tasks</td><td>mbmsg link -quiet</td></tr>
|
||||
<tr><td>reqindex</td><td>Fast</td><td>mbfile</td><td>No other tasks</td><td>mbfile index -quiet</td></tr>
|
||||
<tr><td>scanout</td><td>Slow</td><td>call</td><td>Only 1 call task</td><td>mbcico -r1</td></tr>
|
||||
</table>
|
||||
<P>
|
||||
The Fast and Slow values mean: Fast is each second, Slow is check each 20 seconds.
|
||||
As you can see, the system will not do too much at the same time. Jobs like compiling
|
||||
new nodelists or create file request indexes have a very low priority. Because this
|
||||
daemon checks the semafore's each second it responds much better that the old scripts
|
||||
running on the cron daemon. The system will be expanded so that more outgoing calls
|
||||
will be done at the same time, ie. ISDN and analogue calls, and if they are present
|
||||
internet calls, will be made at the same time.
|
||||
<P>
|
||||
The <b>mbtask</b> program keeps also track of a unique number generator, this is
|
||||
just a simple counter that is increased each time it is asked for a new number.
|
||||
It will take years for the numbers to repeat. Even if the status file is lost
|
||||
the chance that numbers are repeated on your system are almost zero. The first
|
||||
time the counter is initialized it is set to the current unix time in seconds
|
||||
since 1 januari 1970. This counter is used by several programs to create unique
|
||||
.pkt filenames, msgid numbers etc.
|
||||
<P>
|
||||
The commandline option <b>-nd</b> is only for debugging, it allows to start
|
||||
without becoming a daemon, <b>mbtask</b> will run in the foreground. This
|
||||
option is only usefull for developers.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbtask</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure.
|
||||
<P> <P>
|
||||
|
||||
|
||||
<H3>Security.</H3>
|
||||
<P>
|
||||
<strong>mbtask</strong> is installed setuid root. This is needed to initialize
|
||||
a raw socket for the ping function. After that is done the privilege drops to
|
||||
user <strong>mbse</strong> before the child process is created and the rest
|
||||
of the initialisation is done.
|
||||
The child process can never get root privileges because it is spawned by user mbse.
|
||||
<P> <P>
|
||||
|
||||
|
||||
<H3>Communications.</H3>
|
||||
<P>
|
||||
Communication between the server and the clients is established by
|
||||
Unix datagram sockets. There can be only 1 server running.
|
||||
The server will accept connections from clients on your local machine only.
|
||||
The limit for the amount of clients that can connect to the server is set to 100.
|
||||
<P>
|
||||
The server creates a Unix datagram socket at startup and waits for connections.
|
||||
The name of this this socket is /opt/mbse/tmp/mbtask.
|
||||
When a client connects it creates a Unix datagram socket in /opt/mbse/tmp, the name is
|
||||
the name of the program, added with the pid of the program. So if <b>mbcico</b> is started
|
||||
with pid 2312 the socket will be /opt/mbse/tmp/mbcico2312.
|
||||
<P>
|
||||
All commands are 4 capital letters followed by a colon, a number indicating
|
||||
how much data fields will follow. If that number is higher than zero, the
|
||||
data fields are seperated with commas. The command is terminated
|
||||
with a ; character. Examples are:<br>
|
||||
<pre>
|
||||
GCLO:0; Zero datafields command.
|
||||
DOPE:1,dbname; One datafield command.
|
||||
</pre>
|
||||
All commands will receive a reply as soon as possible. If a
|
||||
resource is temporary not available, a reply will follow too, telling
|
||||
this condition. Replies can also contain optional data. Examples:<br>
|
||||
<pre>
|
||||
100:0; Response 100, no data.
|
||||
200:1,Syntax error; One datafield.
|
||||
</pre>
|
||||
Because data fields in commands and replies are separated and terminated by
|
||||
, and ; characters these characters need to be escaped. Also characters outside
|
||||
the us-ascii range must be escaped. This is done by translating the character
|
||||
to a backslash followed by the hexadecimal number of the character.
|
||||
The server has a 10 minute timeout for receiving data when a connection
|
||||
is established. The clients need to "ping" the server at regular intervals
|
||||
to prevent a disconnect. All official MBSE BBS programs do that. The pid
|
||||
send with most commands is the pid of the calling program. Since this number
|
||||
is unique, it is used to keep track of the connected clients.
|
||||
<P>
|
||||
The commands are divided in 26 catagories, most unused at this time.
|
||||
<P>
|
||||
<pre>
|
||||
Catagories:
|
||||
|
||||
Cat. Description
|
||||
---- -------------------------------------------
|
||||
Axxx Accounting, system monitor info etc.
|
||||
Cxxx Chatting
|
||||
Dxxx Disk watch
|
||||
Gxxx Global commands.
|
||||
Mxxx MIB commands.
|
||||
Sxxx Status commands.
|
||||
|
||||
|
||||
|
||||
Group A, Accounting.
|
||||
|
||||
Command: AINI:5,pid,tty,uid,prg,city; Initialize connection, and who am I.
|
||||
Reply: 100:1,line; Ok, linen is a logical linennumber for the bbs.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ADOI:2,pid,doing; What am I doing right now.
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ACLO:1,pid; Close my connection.
|
||||
Reply: 107:0; Connection closed.
|
||||
200:1,Syntax Error; Error, connection is still open.
|
||||
|
||||
Command: ALOG:5,fil,prg,pid,grade,txt; Write a line of text in logfile with grade.
|
||||
Reply: 100:0; Ok.
|
||||
201:1,errno; Error, number in errno.
|
||||
|
||||
Command: ATCP:1,pid; Registrate this session as TCP/IP session.
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: AUSR:3,pid,uid,city; Set username and city
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ADIS:2,pid,flag; Set Do Not Disturb flag.
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ATIM:1,time; Set new Client/Server timer in seconds.
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ADEF:0; Set Client/Server timer to default (10 minutes).
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
Command: ATTY:2,pid,tty; Set new tty name.
|
||||
Reply: 100:0; Ok.
|
||||
200:1,Syntax Error; Error.
|
||||
|
||||
|
||||
Group C, Chatting
|
||||
|
||||
Command: CIPM:1,pid; Is Personal Message present.
|
||||
Reply: 100:2,fromname,message; Yes, from .. with message text.
|
||||
100:0; No.
|
||||
|
||||
Command: CSPM:3,fromuser,touser,txt; Send personal message to user.
|
||||
Reply: 100:1,n; n: 0=Ok, 1=Do not disturb, 2=Buffer full, 3=Error.
|
||||
100:0; Impossible.
|
||||
|
||||
Command: CSYS:2,pid,1; Sysop available for chat (from mbmon).
|
||||
CSYS:2,pid,0; Sysop goes away (from mbmon).
|
||||
Reply: 100:0; Always Ok.
|
||||
|
||||
Command: CPAG:2,pid,reason; Page sysop for a chat.
|
||||
Reply: 100:1,n; 1=busy, 2=sysop not available, 3=error.
|
||||
100:0; Ok
|
||||
|
||||
Command: CCAN:1,pid; Cancel sysop page.
|
||||
Reply: 100:0; Always Ok.
|
||||
|
||||
Command: CCKP:0; Check sysop page (from mbmon).
|
||||
Reply: 100:3,pid,1,reason; Page is active.
|
||||
100:3,pid,0,reason; Page is cancelled, user still online.
|
||||
100:0; No page active.
|
||||
|
||||
Command: CISC:1,pid; Check sysop in chatmode.
|
||||
Reply: 100:1,1; Yes and drop into chatmode.
|
||||
100:1,0; No.
|
||||
|
||||
Command: CCON:4,pid,username,unixname,n; Connect to chatserver with username. n=1 user is sysop.
|
||||
Reply: 100:1,error; Error with message.
|
||||
100:0; Ok.
|
||||
|
||||
Command: CCLO:1,pid; Close chat session.
|
||||
Reply: 100:1,error; Error.
|
||||
100:0; Ok.
|
||||
|
||||
Command: CPUT:2,pid,message; Put message on chatserver.
|
||||
Reply: 100:2,0,error; Error, not fatal and continue.
|
||||
100:2,1,error; Error, fatal and disconnect chat.
|
||||
100:0; Ok.
|
||||
|
||||
Command: CGET:1,pid; Get message from chatserver.
|
||||
100:2,0,message; If message present.
|
||||
100:2,1,error; Error and disconnect chat.
|
||||
100:0; No new message.
|
||||
|
||||
|
||||
Group D, Disk watch command.
|
||||
|
||||
Command: DRES:0; Reset and reread disk tables.
|
||||
Reply: 100:0; Always Ok.
|
||||
|
||||
Command: DSPC:0; Enough free diskspace.
|
||||
Reply: 100:1;n; 0=No, 1=Yes, 2=Unknown, 3=Error.
|
||||
|
||||
Command: DGFS:0; Get filesystem status (see note below).
|
||||
100:n,data1, ..., data10; Maximum 10 filesystems datalines.
|
||||
|
||||
|
||||
Group G, Global commands.
|
||||
|
||||
Command: GNOP:0; No OPerations.
|
||||
Reply: 100:0; Ok.
|
||||
|
||||
Command: GPNG:1,data; Ping, echo data.
|
||||
Reply: 100:1,data; Ping reply.
|
||||
|
||||
Command: GVER:0; Give server version.
|
||||
Reply: 100:1,Version ....; Version reply.
|
||||
|
||||
Command: GSTA:0; Get complete mbsed status record. (13 fields)
|
||||
Reply: 100:19,start,laststart,daily,startups,clients,tot_clients,tot_peak,syntax_errs,
|
||||
com_errs,today_clients,today_peak,today_syntax,today_comerr,bbsopen,
|
||||
is_zmh,do_inet,processing,system_load,sequence;
|
||||
|
||||
Command: GMON:1,n; Get registration info line, 1=First, 0=Next line.
|
||||
Reply: 100:7,pid,tty,user,program,city,isdoing,starttime;
|
||||
100:0; No more lines.
|
||||
|
||||
Command: GSYS:0; Get bbs statistics.
|
||||
100:7,calls,pots_calls,isdn_calls,network_calls,local_calls,startdate,lastcaller;
|
||||
|
||||
Command: GLCC:0; Get Lastcallers count
|
||||
100,1,n; Return counter value.
|
||||
|
||||
Command: GLCR:1,recno; Get Lastcaller record
|
||||
100:9,user,location,level,tty,time,minsmcalls,speed,cations;
|
||||
201:1,16; Not available.
|
||||
|
||||
|
||||
Group M, MIB commands.
|
||||
|
||||
Command: MSMS:6,kbrcvd,kbsent,direction,state,itype,freqs; Set Mailer Session
|
||||
Reply: 100,0;
|
||||
|
||||
Command: MGMS:0; Get Mailer Session
|
||||
Reply: 100:12,kbrcvd,kbsent,sessin,sessout,sess_sec,sess_unseq,sess_bad,ftsc,yoohoo,emsi,binkp,freqs;
|
||||
|
||||
Command: MSTN:3,in,out,bad; Set Tosser Netmail
|
||||
Reply: 100,0;
|
||||
|
||||
Command: MGTN:0; Get Tosser Netmail
|
||||
Reply: 100:3,in,out,bad;
|
||||
|
||||
Command: MSTI:3,in,out,bad; Set Tosser Internet-email
|
||||
Reply: 100,0;
|
||||
|
||||
Command: MGTI:0; Get Tosser Internet-email
|
||||
Reply: 100:3,in,out,bad;
|
||||
|
||||
Command: MSTE:4,in,out,bad,dupe; Set Tosser Echomail
|
||||
Reply: 100:0;
|
||||
|
||||
Command: MGTE:0; Get Tosser Echomail
|
||||
Reply: 100:4,in,out,bad,dupe;
|
||||
|
||||
Command: MSTR:4,in,out,bad,dupe; Set Tosser RFC-news
|
||||
Reply: 100:0;
|
||||
|
||||
Command: MGTR:0; Get Tosser RFC-news
|
||||
Reply: 100:4,in,out,bad,dupe;
|
||||
|
||||
Command: MGTT:0; Get Tosser Totals
|
||||
Reply: 100:4,in,out,bad,dupe;
|
||||
|
||||
Command: MSFF:6,in,out,bad,dupe,magics,hatched; Set Tosser Files
|
||||
Reply: 100:0;
|
||||
|
||||
Command: MGFF:0; Get Tosser Files
|
||||
Reply: 100:6,in,out,bad,dupe,magics,hatched;
|
||||
|
||||
Command: MSBB:9,sessions,minutes,posted,uploads,kbupload,downloads,kbdownload,chats,chatminutes; Set BBS
|
||||
Reply: 100:0;
|
||||
|
||||
Command: MGBB:0; Get BBS
|
||||
Reply: 100:9,sessions,minutes,posted,uploads,kbupload,downloads,kbdownload,chats,chatminutes
|
||||
|
||||
Command: MGOB:0; Get Outbound Size
|
||||
Reply: 100:1,size;
|
||||
|
||||
|
||||
Group S, Status commands.
|
||||
|
||||
Command: SBBS:0; Get BBS Status (open, zmh, shutdown).
|
||||
Reply: 100:2,0,The system is open for use;
|
||||
100:2,1,The system is closed right now!;
|
||||
100:2,2,The system is closed for Zone Mail Hour!;
|
||||
|
||||
Command: SOPE:0; Open the BBS.
|
||||
Reply: 100:0; Ok.
|
||||
|
||||
Command: SCLO:1,mesage; Close the BBS with reason.
|
||||
Reply: 100:0; Ok.
|
||||
|
||||
Command: SFRE:0; Is the BBS Free.
|
||||
Reply: 100:1,Running utilities: n Active users: n;
|
||||
100:0; It's free.
|
||||
|
||||
Command: SSEQ:0; Get next unique sequence number.
|
||||
Reply: 100:1,number; Next unique sequence number.
|
||||
|
||||
Command: SEST:1,semafore; Get status of internal semafore.
|
||||
Reply: 100:1,n; 1 = set, 0 = not set.
|
||||
200:1,16; Semafore not known.
|
||||
|
||||
Command: SECR:1,semafore; Set semafore
|
||||
Reply: 100:0; Ok.
|
||||
200:1,16; Error.
|
||||
|
||||
Command: SERM:1,semafore; Remove semafore
|
||||
Reply: 100:0; Ok (also if there was no semafore).
|
||||
200:1,16; Semafore not known.
|
||||
</pre>
|
||||
Note: in reply of DGFS the reply is 100:n,size free mountpoint fstype,.....
|
||||
where n = 1 for 1 filesystem, and 10 for a total of 10 filesystems. There
|
||||
will never be a reply for more then 10 filesystems. The reported filesystems
|
||||
are collected by a thread process of mbtask that only includes the filesystems
|
||||
actually used by mbse.
|
||||
This is used by the <b>mbmon</b> program to get a "live" view of your filesystems.
|
||||
The GSPC command is used by utilities to check if enough space is available to
|
||||
continue to work safely.
|
||||
<P> <P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
47
html/programs/mbtoberep.html
Normal file
47
html/programs/mbtoberep.html
Normal file
@@ -0,0 +1,47 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbtoberep.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbtoberep - List newfiles to report.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 31-Jan-2001</h5></div>
|
||||
<div align="center"><H1>mbtoberep - List newfiles to report</H1></div>
|
||||
|
||||
<H3>Synopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbtoberep</strong></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbtoberep</strong> is a small utility to list the file
|
||||
~/etc/toberep.data which contains the newfiles found on your system before
|
||||
<strong>mbaff announce</strong> is run. This program is intended for system
|
||||
development but I decided to leave it in the distribution for now. If you
|
||||
pipe the output thru more or less you are able to inspect the records.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbtoberep</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
71
html/programs/mbuser.html
Normal file
71
html/programs/mbuser.html
Normal file
@@ -0,0 +1,71 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbuser.html,v 1.5 2003/11/08 18:49:36 mbroek Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbuser - User Database Maintenance.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 02-Feb-2001</h5></div>
|
||||
<div align="center"><H1>mbuser - User Database Maintenance</H1></div>
|
||||
|
||||
<H3>Sysnopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbuser</strong> [commands] <options></code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbuser</strong> is the user database maintenance program. It can delete
|
||||
users upto a certain level who have not called for a number of days. It can
|
||||
also pack the user database. This is not really a pack of the database, the
|
||||
deleted records are zeroed but the database is never shrinked. Every user
|
||||
once in this database will keep his record forever. This is to be sure that
|
||||
all LastRead Pointers will be correct. Records that are zeroed can be
|
||||
reused for new users. <strong>mbuser</strong> must run setuid root and
|
||||
setgid root because it executes /usr/sbin/userdel to delete the Unix account
|
||||
of the user that is removed from the bbs.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbuser</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory. <strong>mbuser</strong> must be
|
||||
installed setuid root and setgid root, ls -la looks like this:<br>
|
||||
<pre>
|
||||
-rws--s--x 1 root root 23560 Jun 19 19:50 /opt/mbse/bin/mbuser*
|
||||
</pre>
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
<code><strong>mbuser</strong> kill [n] [l]</code> will mark users to delete who have not
|
||||
called in <strong>n</strong> days upto and including level <strong>l</strong>.
|
||||
<P>
|
||||
<code><strong>mbuser</strong> pack</code> will delete (zero) the users marked for deletion.
|
||||
You should also run this command if you marked users to delete with
|
||||
<strong>mbsetup</strong>.
|
||||
<P> <P>
|
||||
|
||||
<H3>Options.</H3>
|
||||
<P>
|
||||
<code><strong>mbuser</strong> [command] -quiet</code> will suppress screen output, this is
|
||||
for running <strong>mbuser</strong> in the background or from the crontab.
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
71
html/programs/mbuseradd.html
Normal file
71
html/programs/mbuseradd.html
Normal file
@@ -0,0 +1,71 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML>
|
||||
<!-- $Id: mbuseradd.html,v 1.7 2005/08/27 14:17:14 mbse Exp $ -->
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META http-equiv="Content-Style-Type" content="text/css">
|
||||
<META NAME="Language" content='en'>
|
||||
<META name="author" lang="en" content="Michiel Broek">
|
||||
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
||||
<META name="description" lang="en" content="MBSE BBS Manual">
|
||||
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
||||
<TITLE>MBSE BBS Programs - mbuseradd - The useradd wrapper.</TITLE>
|
||||
<LINK rel=stylesheet HREF="../manual.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<BLOCKQUOTE>
|
||||
<div align="right"><h5>Last update 27-Aug-2005</h5></div>
|
||||
<div align="center"><H1>mbuseradd - The useradd wrapper.</H1></div>
|
||||
|
||||
<H3>Sysnopsis.</H3>
|
||||
<P>
|
||||
<code><strong>mbuseradd</strong> [gid] [username] [comment] [userdir]</code>
|
||||
<P> <P>
|
||||
|
||||
<H3>Description.</H3>
|
||||
<P>
|
||||
<strong>mbuseradd</strong> is the wrapper for the <strong>useradd</strong>
|
||||
program that should be present on most GNU/Linux systems. <strong>useradd</strong>
|
||||
may only be executed by <strong>root</strong> and there are some other minor
|
||||
things that need to be done as <strong>root</strong> to create a new Unix
|
||||
account that can be used with MBSE BBS. The solution for these problems is
|
||||
<strong>mbuseradd</strong>, this little program runs setuid root and setgid
|
||||
root. If it fails to do that it aborts. <strong>mbuseradd</strong> is called
|
||||
by <strong>mbnewusr</strong> and checks if it's called like that.
|
||||
If it is successfull the user will
|
||||
have an entry in /etc/passwd, the comment is his Fidonet name, and his shell
|
||||
is $MBSE_ROOT/bin/mbsebbs.
|
||||
<P>
|
||||
If all this is successfull until now, the homedirectory for this user is
|
||||
created and the right ownership and permissions are set. In his homedirectory
|
||||
the empty file <strong>.hushlogin</strong> is placed to prevent check for
|
||||
new mail when he logs into your system. This is the Unix mailcheck that is
|
||||
skipped and has nothing todo with the check for new mail in the bbs. All
|
||||
other directories that are needed for the bbs are created by <b>mbsebbs</b>.
|
||||
<P> <P>
|
||||
|
||||
<H3>Environment.</H3>
|
||||
<P>
|
||||
In order to run <strong>mbuseradd</strong> you must set the global variable
|
||||
<strong>$MBSE_ROOT</strong>. This variable must point to the root directory
|
||||
of the bbs structure. The main configuration file <strong>config.data</strong>
|
||||
must be present in the ~/etc directory. <strong>mbuseradd</strong> must be
|
||||
installed setuid root and setgid root, ls -la looks like this:<br>
|
||||
<pre>
|
||||
-rws--s--x 1 root root 6644 Jun 26 21:23 /opt/mbse/bin/mbuseradd*
|
||||
</pre>
|
||||
<P> <P>
|
||||
|
||||
<H3>Commands.</H3>
|
||||
<P>
|
||||
Not mentioned here because <b>mbuseradd</b> is only called by mbnewusr,
|
||||
running manually is not supported.
|
||||
</pre>
|
||||
<P>
|
||||
|
||||
<A HREF="index.htm"><IMG SRC="../images/larrow.png" ALT="Index" Border="0">Back to index</A>
|
||||
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.png" ALT="Main" Border="0">Back to Main index</A>
|
||||
</BLOCKQUOTE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
Reference in New Issue
Block a user