|
|
SocketTools 6.0 introduces support for the SSH protocol, adds
several new features and a number of improvements which makes
Internet development even easier. The following is an overview of
some of the the new features:
- Support for the Secure
Shell (SSH) protocol has been added to the SocketTools Secure
Library Edition. Applications can establish secure, encrypted
connections to a server and execute commands remotely or create an
interactive terminal session. The interface for the SSH library was
designed to be similar to the Telnet API, making it easy for
developers to add support for SSH to an existing application.
- Support for secure file transfers using SSH (SFTP) has been
seamlessly integrated into the FTP API. In most cases, the only
thing that an existing application needs to do is establish a
connection on the default SSH port, or specify a single option when
connecting to the server. A SocketTools Secure Library Edition
license is required to use the security features in the FTP
library.
- The SocketWrench API has been expanded to make it much easier
to create server applications. The new server functions enable the
developer to create a scalable, event-driven, multi-threaded server
with just a few lines of code, beginning with the InetServerStart
function. All of the client session management is implemented by
the API, and the only thing the application needs to do is respond
to event notifications.
- The MIME API has been expanded to provide storage functions
which enable an application to store, retrieve and search multiple
e-mail messages on the local system. The application can use the
MimeOpenMessageStore
function to create and manage a local mailbox, similar to how many
mail clients store messages that have been downloaded from a mail
server.
- Automatic file type detection has been added to the FTP API.
This enables the library to automatically set the correct file
transfer mode based on the type of file being uploaded or
downloaded, without the application explicitly specifying if the
file is text or binary. It is also possible to register your own
custom file types using the FtpRegisterFileType
function.
- Automatic file verification has been added to the FTP API. The
library can automatically verify that the file on the local system
is identical to the file on the server using an MD5 hash or CRC-32
checksum after it has been uploaded or downloaded. The file
verification process can also be performed directly by the
application using the FtpVerifyFile function.
For example, this can be used to determine if it is necessary to
upload a file depending on whether or not the contents have
changed.
- Support for virtual hosting has been added through an option to
the FtpConnect
function. This allows the library to be used with servers that are
configured to host multiple domains using the same external IP
address.
- Added support for returning file quota information from an FTP
server using the FtpGetClientQuota
function, if the server supports individual users quotas. This is
used to determine the number of files the user may create, and the
total amount of data that they may upload to the server. An
application can use this information to warn the user if a file
upload would exceed their quota limits.
- Improved support in the HTTP library for posting XML data to a
server, including the ability to post XML data and retrieve the
response from the server in a single function call. The new
HttpPostXml
function makes it easier for applications to submit XML data to a
server, without having to worry about setting the correct content
type or transfer encoding.
There have also been general improvements in overall performance
and efficiency with FTP and HTTP transfers, decreasing the overall
transfer times for large files. The core message parsing code in
the MIME API has also been improved, enabling it to automatically
correct problems with malformed messages, or messages which do not
strictly conform to the RFC 822 and/or RFC 2045 standard message
formats. The POP3 and IMAP4 libraries also provide better support
for managing a large number of messages on the mail server.
|
|