Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Synchronet
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Main
Synchronet
Commits
02810b7a
Commit
02810b7a
authored
20 years ago
by
rswindell
Browse files
Options
Downloads
Patches
Plain Diff
List of new features/changes in v3.12a.
parent
a1802f95
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
docs/v312_new.html
+198
-0
198 additions, 0 deletions
docs/v312_new.html
with
198 additions
and
0 deletions
docs/v312_new.html
0 → 100644
+
198
−
0
View file @
02810b7a
<html>
<head>
<title>
What's New in Synchronet v3.12 (Change History)
</title>
</head>
<body>
<font
face=
Arial,Helvetica
>
<h1
align=
center
>
What's New in Synchronet v3.12
</h1>
<ul>
<li><b>
Web Server
</b>
(New!)
<ul>
<li>
HTTP 1.0 and 1.1
<li>
Virtual Hosts
<li>
CGI (currently on Unix only)
<li>
Server-side JavaScript (SSJS) for dynamically-generated web content
<li>
Default HTML user interface for creating new user accounts and reading messages
<li>
Standard format HTTP access logs (
<tt>
data/logs/http-*
</tt>
)
<li>
Configurable MIME file type support (
<tt>
ctrl/mime_types.ini
</tt>
)
<li>
... and many more cool features thanks to Stephen Hurd (Deuce)
</ul><br>
<li><b>
Mail Server
</b><ul>
<li>
Supports SMTP authentication (PLAIN, LOGIN, or CRAM-MD5) when using an external relay server
<li>
Creates default MIME Content-Type for non-Internet messages (
<tt>
charset=IBM437
</tt>
)
<li>
Supports
<tt>
user@[
<i>
ip_address
</i>
]
</tt>
notation
<li>
Supports RFC822 header fields in
<tt>
Field
<i>
[white-space]
</i>
:
</tt>
format
<li>
Fixed receipt of SMTP telegrams (inter-BBS instant-messages)
<li>
Fixed possible buffer overflow scenarios
<li>
Fixed UDP DNS MX-record look-up bug
<li>
If posting via authenticatd SMTP (e.g.
<tt>
sub:code@yourbbs.com
</tt>
), verifies user meets access requirements
<li>
Much-improved external mail processor support using new
<tt>
ctrl/mailproc.ini
</tt><ul>
<li>
Or
<tt>
ctrl/mailproc.
<i>
host
</i>
.ini
</tt>
if it exists
<li>
Includes ListServer module as example mail processor
<li>
See
<a
href=
listserver.txt
>
listserver.txt
</a>
for details
</ul>
<li>
Mail processors may run only for specific recipients (or a set of recipients)
<li>
Additional mail processor command-line specifiers:
<ul>
<li><tt>
%R
</tt>
(Reverse path)
<li><tt>
%S
</tt>
(Sender's name)
<li><tt>
%A
</tt>
(Sender's address)
</ul>
<li>
JavaScript mail processor modules:
<ul>
<li>
can now use
<tt>
log()
</tt>
to write to the mail server log window
<br>
(AKA
<tt>
write
</tt>
,
<tt>
writeln
</tt>
, and
<tt>
print
</tt>
)
<li>
have access to global variables:
<tt>
sender_name
</tt>
,
<tt>
sender_address
</tt>
, and
<tt>
reverse_path
</tt>
</ul>
</ul><br>
<li><b>
Telnet/RLogin Server
</b><ul>
<li>
Telnet option negotiation overhaul:
<ul>
<li>
Compatibility with more clients
<li>
Gets/stores terminal type
<li>
Supports negotiated window size (much more reliable than ANSI cursor position reports)
</ul>
<li>
Telnet server now escapes the telnet IAC (ASCII 255) character
<li>
Many RLogin improvements and behavior changes (ask Deuce for details)
<li>
Switched "Allowed RLogin address list" from
<tt>
data/rlogin.can
</tt>
to
<tt>
ctrl/rlogin.cfg
</tt>
<li>
QWK/REP packing/unpacking semaphore file allows multiple hosts to process QWK events (for FTP server)
<li>
Counts and logs number of "short sends" on client socket
<li>
Fixed crashes/segfaults when re-loading configuration files
<li>
Fixed "Monitor Time Left" external program toggle option
<li>
Fixed calculation of upload/download and post/call ratios over 50% in Access Requirement Strings
<li>
Beeps at user when reaching end of allowed string input
<li>
Batch download file list now contains the long filenames if the file transfer protocol is "Native 32-bit"
<li>
Rejects filenames begining with a dash as a "suspicious filename"
<li>
Use default
<tt>
SHELL
</tt>
value of
<tt>
/bin/sh
</tt>
if environment variable not set for Unix version
<li>
Created
<tt>
PROT
</tt>
ARS keyword (e.g. "Telnet" or "RLogin")
<li>
The
<tt>
%p
</tt>
command-line specifier now expands to the client's protocol (e.g. "Telnet" or "RLogin")
<li>
Allow spinning cursor to be completely disabled by users (even for pause prompts)
<li><tt>
input_thread_mutex
</tt>
lock fix (work-around necessary for some Linux distros)
<li>
Eliminated hard-coded "Continue?" prompt during new user procedure, using text.dat line 564 instead
</ul><br>
<li><b>
FTP Server
</b><ul>
<li>
Supports both shared and non-shared open modes when sending files (for download)
<li>
Guest/anonymous HTML clients can now toggle on/off extended file descriptions in
<tt>
00index.html
</tt>
<li>
Don't update existing (pre-packed?) QWK packet when downloading or "sizing" a QWK packet via FTP
</ul><br>
<li><b>
Synchronet Services
</b><ul>
<li>
Configurable stack size for service threads
<li>
Improved
<tt>
client_add()
</tt>
and
<tt>
client_remove()
</tt>
methods
<li>
Eliminated support for legacy
<tt>
ctrl/services.cfg
</tt><ul>
<li>
Must use
<tt>
ctrl/services.ini
</tt>
or
<tt>
ctrl/services.
<i>
host
</i>
.ini
</tt>
now
</ul>
<li>
Fixed termination request with active clients
</ul><br>
<li><b>
All Servers
</b><ul>
<li>
Automatic bind-retry on failure (typically, "address/port already in use")
<li>
Much more flexible semaphore file format for recycling or shutting-down servers using the local file system
<ul>
<li>
Format:
<tt>
ctrl/
<i>
action
</i>
[.
<i>
host
</i>
][.
<i>
service
</i>
]
</tt>
<li>
Examples:
<ul>
<li><tt>
ctrl/recycle
</tt>
- recycle all services on all hosts
<li><tt>
ctrl/recycle.vert
</tt>
- recycle all services on system with hostname "vert"
<li><tt>
ctrl/shutdown.vert.telnet
</tt>
- shutdown telnet service on vert only
<br>
<i>
service
</i>
may be "telnet", "ftp", "mail", "web" or "services"
</ul>
<li>
Legacy (
<tt>
ctrl/*.rec
</tt>
) recycle semaphore files still supported
</ul>
<li>
Startup initialization file (
<tt>
ctrl/sbbs.ini
</tt>
) is re-parsed upon server recycle
<li>
Much more responsive to requests for termination (immediate) and shutdown (when not in use)
</ul><br>
<li><b>
Message Bases
</b>
(SMBLIB v2.40)
<ul>
<li>
Performance and reliability improvements
<li>
The e-mail message base (
<tt>
data/mail
</tt>
) now supports an unlimited number of messages (within SMB limits)
<li>
High-level functions added for the convenience of 3rd party developers
<li>
New security header fields track who posted what messages from where
<li>
New hash database
<ul>
<li>
to perform fast look-ups of message-IDs for threading and duplicate checking
<li>
robust body text dupe checking (better than legacy CRC history method)
<li>
hash history file is never purged or deleted so old dupes cannot return
<li>
no chance for false positives
</ul>
<li>
Auto-thread linkage
<ul>
<li>
resulting thread-links will be used extensively in future threaded message displays (ala web-boards)
</ul>
<li>
New SMBUTIL commands:
<ul>
<li><tt>
d
</tt>
delete all messages
<li><tt>
h
</tt>
dump hash database
</ul>
<li>
New SMBUTIL options:
<ul>
<li><tt>
-c[m]
</tt>
create message base if it doesn't exist (m=max msgs)
<li><tt>
-l
</tt>
LZH-compress imported message text
<li><tt>
-o
</tt>
print errors on stdout (instead of stderr)
<li><tt>
-p
</tt>
wait for keypress (pause) on exit
<li><tt>
-!
</tt>
wait for keypress (pause) on error
<li><tt>
-b
</tt>
beep on error (quiet is now the default)
</ul>
<li>
New CHKSMB options:
<ul>
<li><tt>
-b
</tt>
beep on error (quiet is now the default)
<li><tt>
-h
</tt>
do not check hash database
</ul>
<li>
FIXSMB may now be used to repair multiple message bases with a single command
<br>
Example:
<tt>
fixsmb data/*.shd
</tt>
<li>
FIXSMB now removes "in-transit" attributes (holding messages in the mail server queue)
<li>
FIXSMB will now add message hashes to the hash database (if missing)
</ul><br>
<li><b>
JavaScript
</b><ul>
<li>
JSexec new global methods:
<ul>
<li><tt>
chdir()
</tt>
(change current directory)
<li><tt>
putenv()
</tt>
(create/set environment variable)
</ul>
<li>
Background (multi-threaded) script support using
<tt>
load(true,
<i>
filename, args
</i>
)
</tt>
<li>
New
<a
href=
v312_jsnew.html#Queue
>
Queue
</a>
class for bi-directional communications between modules/threads
<li>
New
<tt>
bbs.mods
</tt>
object for a common global repository for 3rd party modifications/modules
<li>
Reduced memory usage (using the undocumented JSPROP_SHARED attribute for properties)
<li><tt>
MsgBase.save_msg()
</tt>
will accept any variable type for the body text
<br>
and will automatically convert to a string (even arrays of objects)
<li>
For a complete list of JavaScript Object Model changes, see
<a
href=
v312_jsnew.html
>
v312_jsnew.html
</a>
</ul><br>
<li><b>
Full-screen Utilities
</b>
(e.g. SCFG, EchoCfg, etc.)
<ul>
<li>
Mouse support returns to Win32
<li>
Strings longer than the screen width can now be edited
<li>
Support ANSI terminals (remote input doesn't currently work on NT-based OSes)
<li>
Support X consoles on Unix
<li>
Compatibility with terminals/keyboards lacking some extended keys.
<br>
The following are now equivalanet in ulist (menus) and string input:
<ul>
<li>
^B = home
<li>
^E = end
<li>
^V = insert (string input only)
<li>
^Z = help (F1)
</ul>
and in menus only:
<ul>
<li>
+ = insert
<li>
- = delete
<li>
backspace = escape (not new)
<li>
^U = pgup
<li>
^D = pgdn
<li>
^C = copy (F5)
<li>
^V = paste (F6)
</ul>
<li>
... and many more cool features thanks to Stephen Hurd (Deuce)
</ul><br>
<li><b>
Windows NT Services
</b><ul>
<li>
Supports mute/umute and sysop available/unavailable control from the Synchronet Control Panel
<li>
Event log messages no longer contain warnings about "missing event source descriptions"
</ul><br>
<li><b>
Synchronet Control Panel (for Win32)
</b><ul>
<li>
Now stores common server settings in
<tt>
ctrl/sbbs.ini
</tt>
instead of Windows Registry
<ul>
<li>
Legacy registry settings are automatically imported
<li>
Allows easy interoperation with
<tt>
sbbsNTsvcs.exe
</tt>
and
<tt>
sbbs.exe
</tt>
<li>
The startup .ini file can now be specified on the
<tt>
sbbsctrl.exe
</tt>
comand-line
<li>
Will use
<tt>
ctrl/
<i>
host
</i>
.ini
</tt>
by default, if it exists
</ul>
<li>
Optionally use Windows file associations when editing or viewing text/ansi/ascii files
<li>
Synchronet Control Panel configuration (window sizes/positions/colors, etc) may be exported-to
<br>
or imported-from
<tt>
ctrl/sbbsctrl.ini
</tt>
</ul><br>
<li><b>
Synchronet Console
</b><ul>
<li>
Added commands:
<ul>
<li>
(R)ecycle/(S)hutdown/(T)erminate any server (or all servers)
<li>
(!) to execute an external (system) command
</ul>
</ul>
</ul>
For
<b>
many
</b>
more changes since v3.10, see
<a
href=
v311_new.html
>
v311_new.html
</a>
and
<a
href=
v311_jsnew.html
>
v311_jsnew.html
</a>
<p
align=
"right"
><font
face=
"Arial"
size=
"1"
,
"
Helvetica
"
>
Copyright 2004 Rob
Swindell
<br>
$Id$
</font></p>
</body>
</html>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment