$Id: ChangeLog,v 1.1192 2007/10/16 19:16:08 mbse Exp $


v0.92.0		08-Oct-2006 - 16-Oct-2007

	general:
                With this version de default internal character encoding is
                UTF-8. BBS users who have a UTF-8 terminal can use the bbs in
                UTF-8 mode and should have no troubles at all reading and
                writing messages in several language encodings.
		Fixed building on FreeBSD, tested on 5.3 and 6.2.
		Added support to link to the GeoIP library. If it's present on
		your system, mbcico, mbsebbs, mbnewusr and mbnntp will log the
		country from which the connection is made.
                Added example telnet login for NetBSD.
                Dropped support for NetBSD < 3.0.
                Added support for Ubuntu.
		Added support for the ARM processor.

	upgrade:
                Because some directories will be moved, a special upgrade
                procedure is needed. Take the following steps:
                1. Don't install the new source yet and make a backup!
                2. In the source topdir run "make clean".
                3. Unpack the new source.
                4. Build new source, "./configure" and "make".
                5. Run "./mbsetup-0.92.0/mbsetup", enter global setup and
                   leave with save. this 'should' move all your existing
                   language files to the new directory structure.
                6. "su", run "make install" and restart the bbs.
                7. "exit".
                If you didn't do steps 1 and 2 (automatic updates) and you
                installed the source over the old source, you will have some
                extra files in the lang subdir of the source. No big deal.
                If you didn't run step 5 then the new language paths have
                the default files from source and not your own. Your own files
                are then still under ~/english/*.* ~/dutch/*.* etc. Move the
                contents of these subdirs into ~/share/int/menus/en/* etc.
                Compile and install this new version.
                In all macro files html.* change the charset to UTF-8. You will
		find these in /opt/mbse/share/int/macro/*/html.*
                If you still have all default macro files then in the source
                directory mbsebbs/examples simply run "make macros" to install
                the updated versions.
                Run "mbfile index -f " once to regenerate all download html
                index pages with UTF-8 encoding. Check the error.log for
                errors.
                In mbsetup menu 1.3.7 change logo.asc into logo.ans and make
                sure you have that file. A note about the logo file, it will
                be displayed before we know if a user has a utf-8 or ansi
                terminal, so change your logo screen so that it has no ansi
                grafic characters, just plain ascii with ansi color codes.
                Start and leave mbsetup, this will upgrade the newfiles and
                filefind reports to set a defaults CHRS kludge CP437 2 which
                is good for reports with ANSI blockgraphics.
 		The next step is optional but advised to make the symbolic
		links in the download areas without path information:               

                mbse$ cd /opt/mbse/ftp
                mbse$ find pub -type l -exec rm '{}' \;
                mbse$ mbfile check

                Make sure mbtask is restarted.

        libmbse:
                Fixed commandline address parsing if a 2d address was given.
                Added coding and decoding to strings that are processed by the
                diesel macroprocessor.
                Fixed a compile warning in the diesel code.
                Moved default language paths into ~/share/int
                Fixed a too low memory allocation in clencode.
                Added support or the ARM processor, thanks to Simon Voortman.

	libmsgbase:
                Added extra debug info in pack function.
		Fixed serveral problems with LastRead pointers created by
		GoldED.
                LastRead records that don't belong to a valid user are
                purged.

	libnodelist:
                Don't complain if attempt to read an extended nodelist line
                fails.

        libdiesel:
                Fixed linking problem on OpenBSD.

        mbcico:
                If no suitable compressor found for binkp transfers then don't
                complain.
                Added mbtask command to update the MIB counters.
                Fixed a lot of gcc4 compiler warnings.
                Fixed compiling on NetBSD 3.1.
                Catch SIGIOT.
                Fixed outbound scanning on ARM systems.
                Added GeoIP support.

        mbout:
                Catch SIGIOT.

        mbfido:
                Check if active marked virusscanner is really present on the
                system.
                Don't crash on empty ticfiles.
                Fixed log message for scanned netmail.
                The make web stat command produces UTF-8 webpages.
                The add file function now creates links without pathnames.
                In rfc2ftn if we cannot find the incoming charset from the
                standard table we will fall back to the charset in the
                Content-type: header and try to initialize iconv with that
                value.
                For debug info help to me, the headers Content-Type and
                Content-Transfer-Encoding are temporary stored in the fido
                message as kludges.
                Added mbtask commands to update the MIB counters.
                Fixed mbfile import with too many description lines in
                files.bbs
                Fixed a buffer overflow when processing TIC files with a lot
                of garbage in it.
                Fixed a lot of gcc4 compiler warnings.
                Fixed compiling on NetBSD 3.1.
                If the LFN in the tic file is empty, create a lowercase name.
                Catch SIGIOT.
                Fixed date conversion in netmail-email gate.
                Fixed buffer overwrite caused by bad formatted ticfiles.

        mbsebbs:
                Remove some private user files from the users home directory
                during logoff.
                Check if active marked virusscanner is really present on the
                system.
                Moved default language paths into ~/share/int
                Added terminal setting UTF-8.
                Removed setting ANSI/Textmode, allways graphic now.
                All *.asc textfiles are now obsolete, only *.ans are valid.
                Display ansi file converts to UTF-8 if the user has UTF-8.
                Email and FTN mail reading now translates to the users
                characterset using glibc iconv.
                Changed menus lastcallers, whoson, userlist, pinfo, fsedit,
                timestats, filelist to output UTF-8 code if the user has set
                that terminal setting.
                Uploaded files now have symlinks without pathnames.
                Fixed upload crash when a FILE_ID.DIZ is found but the bbs is
                not allowed to open it for reading.
                The filelist now displays long filenames (finally).
                Searching FILE_ID.DIZ in uploads is now case insensitive.
                Improved cleaning users tmp dir after virus scan.
                Fixed a lot of gcc4 compiler warnings.
                Fixed compiling on NetBSD 3.1.
                Catch SIGIOT.
                Use both CRC and User ID to search lastread record.
                Added missing check to see if a user is allowed to post or
                reply a message.
                Added GeoIP support.

        mbnewusr:
                Fixed loading default language for new user.
                Catch SIGIOT.
                Added GeoIP support.

        mbfile:
                The check filebase command now also removes dead symlinks from
                the download directories.
                The index command produces UTF-8 webpages.
                The check command now repairs filenames without using absolute
                pathnames.
                The adopt, import and move functions now make links without
                path.
                Help message displays quoted description.
                The adopt command works even if the description isn't quoted.
                Catch SIGIOT.

        mbindex:
                Check nodelist permissions and try to correct them.
                When the first Zone entry is missing in the nodelist, mbindex
                aborts with a fatal error and doesn't replace the nodelist
                index.
                Keep the latest 4 instead of 2 nodelists in the nodelist
                directory to allow a few weeks for recovery.
                Catch SIGIOT.

        mbdiff:
                Wrote a lf instead of eof character as last character in the
                new nodelist.
                Fixed CRC error made by previous change.
                Fixed a lot of gcc4 compiler warnings.
                Catch SIGIOT.

        mbaff:
                For each newfiles and filefind report there is now a CHRS
                kludge setting. Reports will be converted to the selected
                charset. Origin characterset is CP437 for now.
                Catch SIGIOT.
                Fixed filefind search filenames case insensitive.
                Fixed filefind search in description.

        mball:
                Now also creates allfiles.utf and newfiles.utf with UTF-8
                encoded text. These new files will also be added to the zip
                archives.
                Creates allfiles/newfiles listings with long filenames and
                short filenames.
                Removed debug logging for checking WWW/FTP downloads.
                Catch SIGIOT.
                File download checks from http and ftp are now case
                insensitive.

        mbmsg:
                Catch SIGIOT.

        mbstat:
                Catch SIGIOT.

        mbnntp:
                Reading news outputs UTF-8 coded articles. Posting is done
                with the client side charset and translated when needed.
                Suppress logging of passwords.
                Catch SIGIOT.
                Added GeoIP support.
                Removed a lot of debug logging.

        mbsetup:
                In generated html sitedocs fixed link from node to tic areas.
                Moved default language paths into ~/share/int
                In newfiles and filefind reports the Hi-ASCII setting is gone
                and a CHRS kludge selection is added. Defaults to CP437 2.
                Blocked selection of FTN and Usenet moderated message areas.
                Changed the F-PROT scanner name into fpscan.
                Removed a not used setting for filefind.

        mbmon:
                Added support or the ARM processor.
                Catch SIGIOT.

        mbtask:
                Some code cleanup.
                Fixed s SIGBUS on Sparc/NetBSD systems.
                Moved default language paths into ~/share/int
                Fixed a too low memory allocation in clencode.
                Added SNMP MIB counters and added set commands to increase
                these new counters. Note, there is no SNMP interface yet.
                Added support or the ARM processor.
                Fixed compiling on NetBSD 3.1.
                Fixed a too small buffer.
                Catch SIGIOT.
                Fixed outbound scanning on ARM systems.

        mbuser:
                Set default editor on erased records.

        mbpasswd:
                Added check for FreeBSD > 6.0 and use sysctl for security check.

        mbuseradd:
                Added check for FreeBSD > 6.0 and use sysctl for security check.

        mblogin:
                On NetBSD accepts the -a parameter.

        script:
                Fixed problems with newer joe editor versions.
        script:
                Adjusted editor script to use nansi.sys if ansi.sys is not
                available in the terminfo database.
        script:
                Improved grep in init scripts.

        lang:
                Renamed language files and changed installation paths.
                Language prompts 44, 75 and 76 are obsolete.

        examples:
                Upgraded the html macro templates to produce UTF-8 web pages.
                Upgraded the txtfiles examples to only have .ans screens. The
                logo.ans screen now works on ANSI and UTF-8 terminals.




v0.90.0		06-Nov-2005 - 23-Jul-2006

        upgrade:
                Start mbsetup once and leave, this will update user records
                with the wrong editor choice, fixes the files databases if
		needed and upgrades the nodes settings.
                Add extra switches to unarchiver commands entry 11, see
                mbsetup for the archivers.
                In menus 7.n.3.14 check if the NR flag is off, unless you need
                it (which I doubt).

        mbsebbs:
                Removed antique line editor.
                Added check for users homedirectory permissions and attempt to
                fix errors. If fatal the connection is dropped.
                Fixed virus scan of uploaded archives.
                There are no paths anymore in OLR download packet files.
                Made OLR bluewave packets CPU independant.
                Fixed a strange bug that ftell didn't work right, this caused
                corrupt bluewave download packets.
                Bluewave is now big/little endian correct.
                Added width marker for chat input and fixed linelength.
                Added screen rows detection using ANSI sequences needed for
                some terminal programs like minicom.
                Writes LINES and COLUMNS environment into data.msg so that the
                joe editor can use that.
                Changed zmodem transmitter timeout to 60 seconds and changed
                the zmodem init fase so that clients that don't start automatic
                have a chance to start the transfer.
                The zmodem transmitter now uses buffered output.
                Added Change archiver menu.
                Added crontrol-U0 to display current archiver.
                Changes to OLR ASCII download:
                - area files are named after area tag if possible, dots are
                  replaced by underscores and extension is .text.
                - If available each message now has a msgid in the header.
                - Added a .info file with control information.
                Fixed logging of wrong file after upload.

        mbtask:
		Lots of changes and bugfixes in the IBC chatserver.
                Added code to the chatserver thread to handle remote servers
                with dynamic dns addresses.
                All IBC log lines start now with IBC: to allow easier grep.
                Added global reset for chatservers every 24 hours.
                Added setup checks for two main configuration settings for IBC
                and fail to start if they are missing.
                Don't start connections with IBC servers that miss settings in
                the chatserver setup.
                Several commands now send the server address from the servers
                setup to the neighbours.
                After server connect send the correct usernames already in chat.
                When the IBC server detects a IP change of a remote server it
                will completly restart the connection with that remote.
                Made several functions multithread aware.
                On shutdown also send PART and QUIT messages to all our links
                for our own users if they are still online so that the network
                will keep the correct state.
                Removed all thread programming so that mbtask is now a single
                process again.
                Fixed startup problem on new installations.
                Changed chat welcome message.
                Registration info for the clients was send double coded.
                Delete users from channel when a server disconnects.
                Delete users from a server when server disconnects.
                Check for stopped tasks reverted to the old method without
                signal handlers.
                Fixed comma issue in user/city registration.
                Fixed a crash when there is no /etc/services udp port for the
                chatserver.

        mbsetup:
                In users edit screen, removed append record option.
                Blocked changing the users unixname.
                Removed antique line editor is edit users.
                In IBC setup added a switch for dynamic dns.
                Added switches to default extract commands for file_id.diz
                files to:
                  nomarch -U
                  rar -cu
                  unrar -cu
                  unzip -L
                Other archives don't support forced upper or lowercase.
                Added NR switch to the nodes session setup.
                When a filearea was moved to another path the symlinks were not
                moved to the new path.
                Added archiver selection for nodes in node setup.
                In archiver select added checks for valid archivers and allowed
                escape without selecting an archiver.
                Added selection of archiver select menu.
                Added setup switch for tic nodes that need a 4d seen-by line.
                When saving message areas, the golded.inc file now has the
                groupid numbers from the groups in echomail or news areas.
                The message groups now handle groupnumbers for golded groups.
                In nodes setup added check for paths when directory sessions
                are selected.

        mbcico:
                Don't add files to send anymore when batchnr > 20 to prevent
                an infinite session loop.
                Implemented binkp NR option.
                Assume EXTCMD is set when GZ or BZ2 is active.
                Added real error message for failed outgoing IP connections.

        mbfido:
                Added some experimental code for tic orphans processing.
                Fixed crash when receiving bad tics. 
                Tic orphans and bad crc handling is using a new method.
                Now using new tmp workdirectory functions.
                When a hatch directory doesn't exist, it is created.
                Removed gated SB debug logmessages.
                Made searching file file_id.diz case insensitive.
                Uses archiver from the setup to pack mail for a node.
                If sending crash to a node not in the setup, a default
                archiver is now set to ZIP.
                Accept unpacket mail for own points.
                In created ticfiles in advanced seen-by mode, setting the node
                to 4d will add point numbers to the seen-by lines if needed.
                When message areas are auto changed, the updated golded.inc
                file now has the groupid numbers from the groups in echomail
                or news areas.
                Seenby addresses in the internal tables did not store the
                point numbers.
                Added warning log for messages >= 32768 bytes.

        mbfile:
                Now using new tmp workdirectory functions.
                Fixed file importing of non-archived files.
                The test for files.bbs for files to import was done in the
                wrong directory.
                If a file is not removed from disk during pack, a error log
                is created instead of a normal log.
                Fixed a crash when files.bbs had empty lines.
                Made searching file file_id.diz case insensitive.
                Import now skips empty lines in files.bbs.
                Import now handles properly missing files.

        mbaff:
                Fixed announce and filefind report problem when there were "
                characters in the description.

        mbmon:
                Improved error message when the chatserver is not configured
                in /etc/services.
                In chat beeps are heard for system messages.
                Added width marker for chat input and fixed linelength.
                Better user input checking in chat.
                Safer display in chat.

        mbstat:
                Don't write in errorlog after normal termination.
                Added semafore names to help display.

        mbmsg:
                With the post function the right time is now used.

        mbnntp:
                Removed AREA:TAG kludge from posted articles.

        libmbse.a:
                Added temp workdirectory functions.
                On socket send error 2, abort the client program.
                Fixed another 32/64 bit issue in the files databases and added
                automatic correction if detected.
                Fixed comma issue in user/city registration.

        nodelist.a:
                Fixed parsing the nodelist when IBN:1.2.3.4 returned the IP
                address 1.2.3.4 with port 1.

        lang:
                Changed language prompts 373 and 438.
                New prompts 86, 87, 88 and 89.

	install:
		The checkbasic script uses more tricks to see if you are mbse
		su to root before install.

	examples:
		Updated Engish menus and txtfiles.

