COM API ChangeLog

This document briefly lists the changes made to the COM API.

hMailServer 5.0

Changes breaking compatibility

hMailServer 5 includes a lot of new functionality. Some of the functionality in hMailServer 4 has been redesigned, which have had the effect that the corresponding APIs have been redesigned as well. Due to this, hMailServer 5 has API changes which breaks backwards compatibility.

The following objects no longer exists. The contents of these two have been migrated to the TCPIPPort object

IPHomes

IPHome

The following properties no longer exists:

Alias

Type - This property has been removed since it was not used.

AntiSpam

AntiSpamAction - This property no longer exists since the anti spam funcitonality in version 5 is score-based.

Backup

OverwriteObjects - This property has been removed since it was no longer used - the corresponding functionality in the backup functionality has been removed.

DeleteObjectsNotInBackups - This property has been removed since it was no longer used - the corresponding functionality in the backup functionality has been removed.

GlobalObjects

The Language property have been removed and replaced with a Languages property which returns a collection of languages.

Language

The signature of the String property have been updated.

Settings

POP3Port. This property is no longer relevant since hMailServer may listen on multiple ports.

SMTPPort. This property is no longer relevant since hMailServer may listen on multiple ports.

TarpitDelay - This property has been moved to the AntiSpam object.

TarpitCount - This property has been moved to the AntiSpam object.

IMAPPort - This property is no longer relevant since hMailServer may listen on multiple ports.

UseSPF - This property has been moved to the AntiSpam object.

UseMXChecks - This property has been moved to the AntiSpam object.

DNSBlackLists - This property has been moved to the AntiSpam object.

ListenOnAllAddresses - This property is no longer relevant since the configuraiton of how hMailServer listens on different ports have been changed.

IPHomes - This property no longer exists, since the IPHomes/IPHome objects no longer exists.

The following items have been changed:

Domains

ItemByName have been changed from a method to a property

The following methods and properties have been added to existing objects:

MaxNumberOfAccounts - Maximum number of accounts which can be added to the domain. *

MaxNumberOfAliases - Maximum number of aliases which can be added to the domain. *

MaxNumberOfDistributionLists - Maximum number of distribution lists which can be added to the domain. *

MaxNumberOfAccountsEnabled - Limit number of accounts have been enabled. *

MaxNumberOfAliasesEnabled - Limit number of aliases have been enabled. *

MaxNumberOfDistributionListsEnabled - Limit number of distribution lists have been enabled. *

MaxAccountSize - The maximum size of accounts added to this domain *

* Please note that these properties does not actually enforce the limitations. At the moment, these limitations needs to be enforced in the user interface layer of the application. (They are enforced in hMailServer Administrator and PHPWebAdmin). Enforcing this in the server core would require a redesign of the internals. This has been planned for hMailServer 5.

hMailServer 4.3

Changes breaking compatibility

In hMailServer 4.3, COM clients must call the Authenticate() function on the hMailServer.Application object prior to accessing any other function in the API. This change was made to increase the security of the hMailServer COM API.

The exception for this is the Message object. COM clients can create and send messages using the hMailServer.Message object without calling the Authenticate method.

If you are in a situation where you need to upgrade to hMailServer 4.3, but am unable to upgrade your COM client, a workaround is to set AdministratorPassword in hMailServer.ini to empty. If you do this, you do not have to call the Authenticate method()