New Features in SocketTools 6.0

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.


Copyright © 2008 Catalyst Development Corporation. All rights reserved.