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
2018-09-28 16:22:52 -04:00
..
attach.c Converted from CVS 2009-05-15 22:01:56 +02:00
batchrd.c Converted from CVS 2009-05-15 22:01:56 +02:00
bluewave.h Converted from CVS 2009-05-15 22:01:56 +02:00
charset.c Converted from CVS 2009-05-15 22:01:56 +02:00
clcomm.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04:00
client.c Converted from CVS 2009-05-15 22:01:56 +02:00
crc.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbcfg.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbdupe.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbfdb.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbftn.c v1.0.7.4 2018-09-07 05:11:26 -04:00
dbmsgs.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbnode.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbtic.c Converted from CVS 2009-05-15 22:01:56 +02:00
dbuser.c Converted from CVS 2009-05-15 22:01:56 +02:00
diesel.c Converted from CVS 2009-05-15 22:01:56 +02:00
Diesel.doc Converted from CVS 2009-05-15 22:01:56 +02:00
diesel.h Converted from CVS 2009-05-15 22:01:56 +02:00
dostran.c Converted from CVS 2009-05-15 22:01:56 +02:00
endian.c Converted from CVS 2009-05-15 22:01:56 +02:00
execute.c Converted from CVS 2009-05-15 22:01:56 +02:00
expipe.c Converted from CVS 2009-05-15 22:01:56 +02:00
faddr.c Converted from CVS 2009-05-15 22:01:56 +02:00
falists.c Converted from CVS 2009-05-15 22:01:56 +02:00
ftn.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04:00
ftnmsg.c Converted from CVS 2009-05-15 22:01:56 +02:00
ftscprod.019 Update to FTSCPROD.019 as released by the FTSC. 2017-08-16 20:23:18 -04:00
getheader.c v1.0.7.8 -- Fix reading of origin Net when receiving Type 2+ packets from 2018-09-07 06:13:49 -04:00
gmtoffset.c Converted from CVS 2009-05-15 22:01:56 +02:00
hdr.c Converted from CVS 2009-05-15 22:01:56 +02:00
jam.h Converted from CVS 2009-05-15 22:01:56 +02:00
jammsg.c Converted from CVS 2009-05-15 22:01:56 +02:00
jammsg.h Converted from CVS 2009-05-15 22:01:56 +02:00
jamsys.h Converted from CVS 2009-05-15 22:01:56 +02:00
magic.c Converted from CVS 2009-05-15 22:01:56 +02:00
Makefile v1.0.7.10 - Update configuration files for joe editor to support newer versions of joe, add "areafix" and "filefix" as recognized service names, update Makefiles to install binaries as read & execute only, add DESTDIR support to Makefiles. 2018-09-28 16:22:52 -04:00
mangle.c Converted from CVS 2009-05-15 22:01:56 +02:00
mbdiesel.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04:00
mbfile.c Fixed compiler warnings 2011-05-22 17:43:12 +02:00
mbinet.h Converted from CVS 2009-05-15 22:01:56 +02:00
mbse.h Converted from CVS 2009-05-15 22:01:56 +02:00
mbsedb.h v1.0.7.4 2018-09-07 05:11:26 -04:00
mbselib.h v1.0.7.4 2018-09-07 05:11:26 -04:00
mkprod.awk Converted from CVS 2009-05-15 22:01:56 +02:00
msg.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04:00
msg.h Converted from CVS 2009-05-15 22:01:56 +02:00
msgtext.c Converted from CVS 2009-05-15 22:01:56 +02:00
msgtext.h Converted from CVS 2009-05-15 22:01:56 +02:00
nntp.c Fixed wrong server address for nntp 2011-03-29 20:27:16 +02:00
nodelist.c Bring Git repository to v1.0.6.13 level. 2017-01-18 19:45:13 -05:00
nodelist.conf Converted from CVS 2009-05-15 22:01:56 +02:00
nodelist.h Release 0.95.11, patches by Scott Street. Netmail nodelist sysop lookup added and some fixes 2011-01-26 23:37:48 +01:00
nodelock.c Converted from CVS 2009-05-15 22:01:56 +02:00
noderecord.c Converted from CVS 2009-05-15 22:01:56 +02:00
packet.c Converted from CVS 2009-05-15 22:01:56 +02:00
parsedate.c Converted from CVS 2009-05-15 22:01:56 +02:00
pidinfo.c Converted from CVS 2009-05-15 22:01:56 +02:00
pktname.c Converted from CVS 2009-05-15 22:01:56 +02:00
pop3.c 0.95.12 develop 1, a lot of systems calls changed to universal IPv4/IPv6 functions 2011-01-29 13:03:22 +01:00
proglock.c Converted from CVS 2009-05-15 22:01:56 +02:00
rawio.c Converted from CVS 2009-05-15 22:01:56 +02:00
README Converted from CVS 2009-05-15 22:01:56 +02:00
README.diesel Converted from CVS 2009-05-15 22:01:56 +02:00
README.macro Converted from CVS 2009-05-15 22:01:56 +02:00
rearc.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04:00
remask.c Converted from CVS 2009-05-15 22:01:56 +02:00
rfcaddr.c Converted from CVS 2009-05-15 22:01:56 +02:00
rfcdate.c Converted from CVS 2009-05-15 22:01:56 +02:00
rfcmsg.c Converted from CVS 2009-05-15 22:01:56 +02:00
sectest.c Converted from CVS 2009-05-15 22:01:56 +02:00
semafore.c Converted from CVS 2009-05-15 22:01:56 +02:00
signame.c Converted from CVS 2009-05-15 22:01:56 +02:00
smtp.c 0.95.12 develop 1, a lot of systems calls changed to universal IPv4/IPv6 functions 2011-01-29 13:03:22 +01:00
strcasestr.c Converted from CVS 2009-05-15 22:01:56 +02:00
strutil.c Converted from CVS 2009-05-15 22:01:56 +02:00
term.c Converted from CVS 2009-05-15 22:01:56 +02:00
timers.c Converted from CVS 2009-05-15 22:01:56 +02:00
tmpwork.c Converted from CVS 2009-05-15 22:01:56 +02:00
unpacker.c Converted from CVS 2009-05-15 22:01:56 +02:00
users.h Change storage format for the last OLR download date in users.data to ensure 2017-01-28 07:45:44 -05:00
virscan.c Fixed compiler warnings while building the BBS. Thanks to Ken Bowley for the 2016-09-29 04:55:12 -04: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.