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

mime/quotedprintable: support message with long lines #43194

Open
horejsek opened this issue Dec 15, 2020 · 5 comments
Open

mime/quotedprintable: support message with long lines #43194

horejsek opened this issue Dec 15, 2020 · 5 comments
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@horejsek
Copy link

What version of Go are you using (go version)?

$ go version
go version go1.14.5 darwin/amd64

Does this issue reproduce with the latest release?

Yes.

What operating system and processor architecture are you using (go env)?

go env Output
$ go env

What did you do?

Tried to parse message which does not follow RFC to not having longer than 76 characters (has 4953 characters). Currently, quotedprintable is using bufio.Reader which fails on line longer than ~4k characters because of the bufio.Rader default limit.

What did you expect to see?

Even though it's not a message following RFC, it's better to parse it anyway as there is no reason not to support it.

What did you see instead?

Message cannot be parsed.

@cagedmantis
Copy link
Contributor

Could you provide an example of the code that produced the error, preferably as a Go playground link?

@cagedmantis cagedmantis added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Dec 22, 2020
@networkimprov
Copy link

cc @minux @bradfitz @neild

@Lazyshot
Copy link

Lazyshot commented Jan 8, 2021

We are also seeing this behavior.

https://play.golang.org/p/mNwpwJRrqkn

It's causing some other side affects. Specifically for textproto and bufio:

https://play.golang.org/p/WzCbLdVg0pj

The second play will always timeout because of an infinite loop. This appears to be due to the fact that once the reader encounters a buffer full error, it will always return that error on all subsequent calls.

@networkimprov
Copy link

@gopherbot remove WaitingForInfo

@gopherbot gopherbot removed the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Jan 12, 2021
@cagedmantis cagedmantis changed the title Support message with long lines in quotedprintable mime/quotedprintable: support message with long lines Jan 12, 2021
@cagedmantis cagedmantis added this to the Backlog milestone Jan 12, 2021
@cagedmantis cagedmantis added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Jan 12, 2021
@cagedmantis
Copy link
Contributor

/cc @bradfitz @minux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

No branches or pull requests

5 participants