Platform SDK: SMTP Server Events

IMessageRouter::GetNextHop

[This is preliminary documentation and subject to change.]

The IMessageRouter::GetNextHop method is called by an SMTP source to request from the router where the message should next be relayed.

[local]
HRESULT GetNextHop(
   [in]  LPSTR      pszDestinationAddressType,
   [in]  LPSTR      pszDestinationAddress,
   [in]  DWORD      dwMessageType,
   [out] LPSTR     *ppszRouteAddressType,
   [out] LPSTR     *ppszRouteAddress,
   [out] DWORD     *pdwScheduleID,
   [out] LPSTR     *ppszRouteAddressClass,
   [out] LPSTR     *ppszConnectorName,
   [out] DWORD     *pdwNextHopType
);
pszDestinationAddressType
The address type for the current next hop.
pszDestinationAddress
The Domain Name Server (DNS) address of the current next hop host.
dwMessageType
The MailMsg message type for the current next hop.
ppszRouteAddressType
The address type identified by the router for the new next hop address. Should be one of the following strings:
Constant Value
LPCSTR MTI_ROUTING_ADDRESS_TYPE_NULL NULL
LPCSTR MTI_ROUTING_ADDRESS_TYPE_SMTP "SMTP"
LPCSTR MTI_ROUTING_ADDRESS_TYPE_X400 "X400"
LPCSTR MTI_ROUTING_ADDRESS_TYPE_X500 "X500"

The values X400 and X500 are only used with SMTP services with Microsoft Exchange 2000 installed. This value should always be "SMTP" for standard Windows 2000 SMTP services.

ppszRouteAddress
The Domain Name Server (DNS) address for the new next hop.
pdwScheduleID
A unique identifier used to track the routing results.
ppszRouteAddressClass
The address class for the new next hop.
ppszConnectorName
pdwNextHopType
The type identifier for the new next hop address. Must be one of the following enumerated values:
Constant Description
MTI_NEXT_HOP_TYPE_SAME_VIRTUAL_SERVER (1)  
MTI_NEXT_HOP_TYPE_REMOTE A remote host.
MTI_NEXT_HOP_TYPE_RESERVED Reserved.
MTI_NEXT_HOP_TYPE_UNREACHABLE Host cannot be contacted.
MTI_NEXT_HOP_TYPE_CURRENTLY_UNREACHABLE Host currently cannot be contacted.