Changes in 0.09.g1 ================== Changes ------- * EleXer. EleXer is the new scripting language for EleBBS. EleXer offers many new possibilities to further customize and extend your EleBBS configuration. EleXer is an subset of standard Pascal supporting many of the normal syntax as you might been used to in the popular Pascal versions. Besides the normal functions, a lot of specific EleBBS functions and procedures have been implemented as well. Please consult ELXFUNC.TXT in order to get a complete listing of all the available routines. There are many examples included (and hopefully, many more will be written) in the archive ELX_DEF.ZIP. You can compile the examples using the "elexer.exe" binary, and you can run them from EleBBS (menu type 102) * After more than two years of development EleBBS/Linux has been included in this line of releases. EleBBS/Linux' first beta version was released at 27th June 1999, and has increased in stability, performance and reliability ever since. The included version of EleBBS/Linux is currently in the same state as EleBBS/DOS. This means that all TCP/IP related routines (chat, newsgroups, etc) are currently not included. We hope to fix this in a beta version soon. * EleFILE HTMLIST does no longer support Q-A scripts to generate HTML filelistings. You need to convert to EleXer scripts. Examples have been included in EXCFG.ZIP (see FDBHTML.PAS) Enhancements ------------ * The lastread check (when listing message areas) in EleBBS was rather slow, this has been sped up considerably. * When writing new netmail you can now directly browse the nodelist. * When you enter an "To" address, this is checked against the nodelist * EleBBS would not run on terminals with screens larger than 100 lines * You can now make NEWSSRV behave that it only lists areas to authenticated users. * EleBBS now can send mail to unlisted nodelist addresses. It has added one language prompt for this, number 709. * If EleMAIL is unable to send a mail to a destination, this is now logged. * You can now use *U on menu function 100 (Join IRC channel) to set the useron status. * Written an IDENTSRV to use with EleIRC. This will avoid a long delay when logging on to some IRC servers. * Added an extra menu item (102), run EleXer script (see above). * Using ^K@??????| will try to run an EleXer script with that name first if no extension is specified. If this doesnt exist, it will fallback to running the Q-A version. If you don't want EleBBS to ever run the EleXer version, you might want to specify the full filename with extension, eg: ^K@script.q-a| * EleBBS can now telnet out to other (BBS, etc) systems. EleBBS has added menu function 101 for this. You need to add prompt #709 and #710 to your language file(s) * Enhanced EleMAIL's mailfwd.ctl parsing to allow different message areas to be mentioned for different "fwd" types, eg: ; cmd: TO: ALIAS: AREANR: fwd "info" "Maarten Bekers" 1 fwd "list" "Maarten Bekers" 2 If the 4th parameter is omitted, EleMAIL will use the default area. Please update your current mailfwd.ctl file. * NEWSSRV now performs a lot better if your server is well used by "caching" connections * EleNEWS now runs the EleXer script NWSFILT if it exists which can return wether or not to actually download the messgae. Please see NWSFILT.PAS for more information (this is includex in excfg.zip) * ELCONFIG now also lists two paths for EleWEB. If you do not use EleWEB you can safely ignore these fields. In the EleWEB installation instructions it's clearly explained how to set these fields. * Added support in EleUSER, EleBBS and EleWEB for run-time added userbase fields. This is done by executing a script called USRSUP.PAS this returns 3 values to both EleBBS and EleUSER: - RecordSize - Wether this record is allowed to be deleted - Default settings EleBBS or EleUSER is responsible for the writing of the data to disk, but you can put anything you want into the data. Because we have to put a limit somewhere, the structure is limited to 1024bytes. The default implementation creates a structure with a record of 251 bytes to an "home" directory. In this home directory (when it's also actually created) you can store extra data like an extra configuration file containing the users e-mail address, picture etc. This is designed after Scott Little's proposal in the EleBBS beta mailinglist. EleBBS and EleUSER expects the USRSUP.ELM module to be present in the your system directory. The first time you have compiled USRSUP you should run EleUSER -E this forces a complete rebuild of the user file (also handy with corruption by not-enabled utilities) to ensure the USERSELE.BBS file is up-to-date. * EleBBS will run "exitbbs.elm" in the current directory upon exit of EleBBS, dont make EleBBS crash in this script as ugly things can happen then Scripting Commands Enhancements ------------------------------- (The Q-A language is no longer enhanced. For more powerfull functions please use EleXer) * An users lastread pointer can be set using the ^F code in the Q-A routines. Bug Fixes --------- * In the message-reader, the wrong key was checked for valid input. This could cause an seamless "hang" of EleBBS at this point. * If you would use ^K1 or ^KY in the "Checking for mail ...." prompt, the first prompt EleBBS displayed would contain garbage. * Browsing the nodelist would not ask for a more prompt. * In the EleBBS message reader Sysop adjust menu the changing of the "From" and "To" name was not working properly. * If you let EleBBS re-read its EXITINFO.BBS contents back, it would not apply these changes back to the userbase. * Messages addressed to 'All' but with the private bit set would not show up. * The pipe-codes that are supported by EleBBS would sometimes confuse the reader, causing it to only interpret half of those. * EleMGR/2 didn't pass the full long filename to an external program when running any of the programs under the ALT-Fn keys. * The communications handle that was written to DOOR32.SYS was incorrect in some cases. * Menu item 52 (Show users online)'s parameter /H was case sensitive. * When the attachment flag of a file is removed, the subject is now also cleared to avoid revealing the local path to attachments. * Replying to a message with file-attachment now also clears the subject line. * The *N in the auto-node assignment (-n-1) of EleBBS was case sensitive. * EleBBS would create incompatible JAM reply threads when replying to messages. Developer information (Long FileName Support) --------------------------------------------- Starting from EleBBS v0.04.g1 there is support for filenames longer than the standard 8.3 (DOS) format. Because the original RA structures does not allow this, there had to be made an extension to these structures. There has been added an 4-byte field and the "FreeSpace" field has been reduced to remain compatible with earlier versions of EleBBS and other BBS programs/utilties. The added field is called LfnPtr and is basically the same as the LongDescPtr field but gives an file-offset to the longfilename field as stored in the same file as the descriptions are. Where possible (Windows95/98/NT) the short version of the filename is also stored in the normal name to make sure that EleBBS/DOS can handle the file. For more information look at LFNEXAM.ZIP which includes Pascal example code.