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

Issue #11387: Reintroduce MultiPartCompliance.LEGACY in ee9/ee8 #11388

Merged
merged 29 commits into from
Feb 27, 2024

Conversation

joakime
Copy link
Contributor

@joakime joakime commented Feb 7, 2024

Reintroduce MultiPartCompliance.LEGACY behaviors.

@joakime joakime self-assigned this Feb 7, 2024
@joakime joakime added Enhancement Sponsored This issue affects a user with a commercial support agreement Specification For all industry Specifications (IETF / Servlet / etc) labels Feb 7, 2024
sbordet and others added 6 commits February 13, 2024 20:09
…th CR and the next chunk ending with LF.

Removed internal unused class MultiPartParser.

Signed-off-by: Simone Bordet <[email protected]>
+ in MultiPart.Parser
+ in MultiPartFormData.Parser
+ lenient mode behavior
+ new name fits violation better
+ new tests
+ adding violation to MultiPart.Parser.parseHeaderStart
@joakime
Copy link
Contributor Author

joakime commented Feb 14, 2024

For people reviewing this PR.
Don't be scared by the number of files.
Over 252 files are just moved and consolidated testcases from various parts of the codebase into a new tests/jetty-test-multipart module.

If you exclude (uncheck) the entries for .raw and .txt and Deleted Files in the "File Filter" drop-down, then the review becomes much easier to manage.

raw-txt-exclusions

Copy link
Contributor

@gregw gregw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The violation/compliance stuff looks good, but the actual handing of a hanging CR looks wrong and needs some careful analysis.

Do we have a test that parses multi-part form 1 byte chunks?

@joakime
Copy link
Contributor Author

joakime commented Feb 15, 2024

Do we have a test that parses multi-part form 1 byte chunks?

I don't know, but it shouldn't be that hard to setup.

@joakime
Copy link
Contributor Author

joakime commented Feb 20, 2024

This PR is largely complete.
But I'm waiting on PR #11409 to complete so I can update this PR and eliminate some of the no longer relevant noise from this PR.

@joakime joakime marked this pull request as ready for review February 23, 2024 17:03
@joakime joakime requested a review from gregw February 23, 2024 17:25
@sbordet sbordet self-requested a review February 27, 2024 08:44
gregw
gregw previously approved these changes Feb 27, 2024
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
@sbordet sbordet self-requested a review February 27, 2024 15:21
@joakime joakime merged commit 98ceb73 into jetty-12.0.x Feb 27, 2024
8 checks passed
@joakime joakime deleted the fix/12.0.x/multipart-legacy-parser branch February 27, 2024 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Specification For all industry Specifications (IETF / Servlet / etc) Sponsored This issue affects a user with a commercial support agreement
Projects
No open projects
Status: ✅ Done
3 participants