Re: TIdMapped* Issues - Potential Solutions

Giganews Newsgroups
Subject: Re: TIdMapped* Issues - Potential Solutions
Posted by:  Remy Lebeau (TeamB) (
Date: Tue, 13 Jun 2006

"Christian Danner" <---@---.---> wrote in message

> Are there any objections?

My only question is why did you take out the call to DoOutboundDisconnect()?

> TIdMappedPOP3 introduces an 'extended' username argument,
> and that's the reason for the mentioned problem.
> in TIdCustomMappedTelnet.ExtractHostAndPortFromLine
> Host and Port are reassigned, no matter whether the 'USER'
> command has an 'extended' argument or not

The clent is required to send an extended USER command.  If it does not,
then the client, not TIdMappedPortPOP3, is at fault.

> Though parsing for the predefined separator characters (#0, #9, ' '
> and ':') seems to be secure enough in order to make such a decision

The decision is already made by the fact that a delimiter character, as
specified by the UserHostDelimiter property ('#' by default), is required in
the username argument, ie:

    USER username#hostport

That is the client's way of telling the server to connect to another server.
You could also use '@' to make it more readible, ie:

    USER username@hostport



In response to

TIdMapped* Issues - Potential Solutions posted by Christian Danner on Tue, 13 Jun 2006