This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
deb-mbse/lib
2005-08-19 20:48:54 +00:00
..
.cvsignore Fixed area creation case sensitive problem 2004-02-29 13:07:42 +00:00
attach.c Changed un_attach logging 2004-08-13 13:50:04 +00:00
batchrd.c Updated libraries headers 2004-02-21 14:24:03 +00:00
bluewave.h Updated Offline Reader 2003-03-02 13:29:33 +00:00
charset.c More charset parsing updates 2005-08-14 14:35:36 +00:00
charset.map More charset parsing updates 2005-08-14 14:35:36 +00:00
chinese.map Added basic Chinese support 2005-04-02 16:18:57 +00:00
clcomm.c Updates for diskwatcher 2004-03-21 12:55:45 +00:00
client.c Code cleanup 2005-07-14 20:49:35 +00:00
crc.c Updated libraries headers 2004-02-21 14:24:03 +00:00
dbcfg.c Updated libraries headers 2004-02-21 14:24:03 +00:00
dbdupe.c Updated libraries headers 2004-02-21 14:24:03 +00:00
dbfdb.c Made magic cleanup in fdb permanent 2004-09-25 11:02:29 +00:00
dbftn.c Updates for newsgroup names 2004-04-13 08:05:06 +00:00
dbmsgs.c Several echomail errors now toss to badboard 2004-08-12 12:50:52 +00:00
dbnode.c Updated libraries headers 2004-02-21 14:24:03 +00:00
dbtic.c Fixed area creation case sensitive problem 2004-02-29 13:07:42 +00:00
dbuser.c Updated libraries headers 2004-02-21 14:24:03 +00:00
diesel.c NetBSD compile cleanups 2004-03-30 20:50:24 +00:00
Diesel.doc Added template processing for newfiles 2002-03-31 13:09:23 +00:00
diesel.h Increased the diesel parser stringlength 2005-02-03 20:44:17 +00:00
dostran.c Updated libraries headers 2004-02-21 14:24:03 +00:00
endian.c Updated libraries headers 2004-02-21 14:24:03 +00:00
execute.c Updated exec functions 2004-08-13 14:30:17 +00:00
expipe.c Updated libraries headers 2004-02-21 14:24:03 +00:00
faddr.c Updated libraries headers 2004-02-21 14:24:03 +00:00
falists.c Updated libraries headers 2004-02-21 14:24:03 +00:00
ftn.c Updated libraries headers 2004-02-21 14:24:03 +00:00
ftnmsg.c Changed PID and TID kludges to include OS and CPU 2004-02-23 16:22:38 +00:00
ftscprod.010 Upgraded to ftscprod.010 2005-05-31 19:55:34 +00:00
getheader.c Fixed error message 2005-08-17 20:16:10 +00:00
gmtoffset.c Updated libraries headers 2004-02-21 14:24:03 +00:00
hdr.c Updated libraries headers 2004-02-21 14:24:03 +00:00
jam.h Initial revision 2001-08-17 05:46:24 +00:00
jammsg.c Fix for lastread pointers 2005-08-14 19:09:48 +00:00
jammsg.h Added auto file areas create/delete 2002-04-28 14:27:23 +00:00
jamsys.h Initial revision 2001-08-17 05:46:24 +00:00
magic.c Debug logging decreased for magic files tests 2004-03-13 12:02:48 +00:00
Makefile Upgraded to ftscprod.010 2005-05-31 19:55:34 +00:00
mangle.c Updated libraries headers 2004-02-21 14:24:03 +00:00
mbcharsetc.c Using Fidogate code to do charset translation 2004-02-28 19:49:54 +00:00
mbcharsetc.h Using Fidogate code to do charset translation 2004-02-28 19:49:54 +00:00
mbdiesel.c Increased the diesel parser stringlength 2005-02-03 20:44:17 +00:00
mbfile.c Completed mbtask new disk watcher 2004-03-20 23:00:22 +00:00
mbinet.h Fix for newsserver authorisation 2004-01-04 12:35:50 +00:00
mbse.h Removed support for non-batching and bidirectional transfer protocols 2004-11-05 20:25:33 +00:00
mbsedb.h Several echomail errors now toss to badboard 2004-08-12 12:50:52 +00:00
mbselib.h Dropped support for newsgroup distribution 2005-08-14 13:05:33 +00:00
mkprod.awk Updated libraries headers 2004-02-21 14:24:03 +00:00
msg.c Code cleanup 2005-08-19 20:48:54 +00:00
msg.h Sempoint OLR patches by Redy 2004-04-13 19:29:54 +00:00
msgtext.c Updated libraries headers 2004-02-21 14:24:03 +00:00
msgtext.h Initial revision 2001-08-17 05:46:24 +00:00
nntp.c Removed debug logging 2005-08-14 12:33:06 +00:00
nodelist.c Removed some debug logging 2004-08-13 18:37:33 +00:00
nodelist.conf Nodelist 000- prefix now softcoded 2004-07-11 11:49:51 +00:00
nodelist.h Fixed IP port override if there is a port added to a protocol 2004-08-07 19:59:46 +00:00
nodelock.c Updated libraries headers 2004-02-21 14:24:03 +00:00
noderecord.c Updated libraries headers 2004-02-21 14:24:03 +00:00
packet.c Updated libraries headers 2004-02-21 14:24:03 +00:00
parsedate.c Updated libraries headers 2004-02-21 14:24:03 +00:00
pktname.c Fixed 5d address names when zone is different then our own 2004-08-07 20:38:40 +00:00
pop3.c Fixed DNS error messages 2005-06-13 19:09:59 +00:00
proglock.c Updated libraries headers 2004-02-21 14:24:03 +00:00
rawio.c Changed terminal i/o for the bbs 2004-11-03 20:48:45 +00:00
README Initial revision 2001-08-17 05:46:24 +00:00
README.diesel Added DIESEL macro language 2002-03-29 22:58:53 +00:00
README.macro Added DIESEL macro language 2002-03-29 22:58:53 +00:00
rearc.c Code cleanup 2005-08-19 20:48:54 +00:00
remask.c Added mbfile rearc 2004-03-08 20:51:04 +00:00
rfcaddr.c Updated libraries headers 2004-02-21 14:24:03 +00:00
rfcdate.c Updated libraries headers 2004-02-21 14:24:03 +00:00
rfcmsg.c Updated libraries headers 2004-02-21 14:24:03 +00:00
russian.map Updated charset definitions and mime headers 2005-01-26 22:33:09 +00:00
sectest.c Updated libraries headers 2004-02-21 14:24:03 +00:00
semafore.c Updated libraries headers 2004-02-21 14:24:03 +00:00
signame.c Several ports fixes 2005-01-06 22:21:59 +00:00
smtp.c Fixed DNS error messages 2005-06-13 19:09:59 +00:00
strcasestr.c Updated libraries headers 2004-02-21 14:24:03 +00:00
strutil.c Added subject line cleaner 2005-08-10 15:32:42 +00:00
term.c Separated tty drivers for mbsebbs and mbnewusr 2004-10-27 11:08:09 +00:00
timers.c Updated libraries headers 2004-02-21 14:24:03 +00:00
unpacker.c Updated libraries headers 2004-02-21 14:24:03 +00:00
users.h Changed user editor 2004-02-24 20:27:41 +00:00

	Database structures.


Most databases have a structure with a header record. The header record
is at the beginning of the datafile and contains information about the
size of the header record and size of the database records. When a data
file is opened for reading the first thing to read the header record.
The field recsize contains the size of the datarecords and the field
hdrsize the offset to the first datarecord in the file.

If in the structure the size of the datarecords changes (grows), we can
allways read the old format in the correct way.

When a datafile is changed the datafile has to be rewritten completly.
Of course the new format is used then, and the new size must be stored in
the header.

The advantage of this technique is that updates can be performed automatic.
There is no need for free space for future use in the datarecords, the files
are thus smaller.


One other important thing, with some DOS based bbs'es, mail/tic processors
are using index files together with the data files to speed up the search in
the databases. Also some of them use internal memory cache for the data records.
I choose not to do this for two reasons, Linux like other Unices handles
file I/O very fast and when your system is not low on memory the kernel will
buffer all disk I/O in memory. Also Linux disks are very low fragmented due to
the design of the ext2fs. Whith all this in mind, using index files is only
extra overhead.
However, because of this you should not put the data files on a msdos
dos partition or on a nfs server.

The only exeption that uses index files are the nodelists.