Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TIdIMAP4.ListMailBoxes() does not handle escaped characters #112

Open
rlebeau opened this issue Apr 6, 2017 · 0 comments

Comments

@rlebeau
Copy link
Member

commented Apr 6, 2017

In Gmail, all special characters (except for '^') can be used to create a label (ie: a folder in IMAP terms). For example, create a label named as follows:

!@#$%&*()_+{}|:"?><

TIdIMAP4.ListMailBoxes() reports that label as this instead:

?><

GMail does report the correct label name in its LIST reply:

C2 LIST "" *
* LIST (\HasNoChildren) "/" "!@#$%&-*()_+{}|:\"?><"
...
C2 OK Success

The problem is that TIdIMAP4.ParseIntoBrackettedQuotedAndUnquotedParts() does not parse the escaped '\"' correctly, so it is splitting up the text into this:

'LIST'
'(\HasNoChildren)'
'/'
'!@#$%&-*()_+{}|:\'
'?><'

When it should be splitting it up into this instead:

'LIST'
'(\HasNoChildren)'
'/'
'!@#$%&-*()_+{}|:"?><'

@rlebeau rlebeau added bug IMAP4 labels Apr 6, 2017

@rlebeau rlebeau self-assigned this Apr 6, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.