Bug 1220399
| Summary: | Spacewalk proxy does not deal well with package requests for //XMLRPC/GET-REQ/xxxx/getPackage/yyyy | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Community] Spacewalk | Reporter: | David Holland <david.w.holland+bz> | ||||
| Component: | Proxy Server | Assignee: | Stephen Herr <sherr> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Red Hat Satellite QA List <satqe-list> | ||||
| Severity: | urgent | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 2.2 | CC: | jdobes | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | spacewalk-proxy-2.4.1-1 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2015-10-08 13:27:03 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Bug Depends On: | |||||||
| Bug Blocks: | 1267654 | ||||||
| Attachments: |
|
||||||
|
Description
David Holland
2015-05-11 13:47:08 UTC
Thanks for the excellent bug report and patch David. I agree with everything you said, especially: > Its arguable the real problem is the client, but I also don't think Proxy > should get confused by these sorts of requests. I also note these style of > requests work fine when hitting spacewalk directly. While uris of the form "http://hostname//path" are not a violation of the uri spec they are technically a request for a *different resource* than a uri of the form "http://hostname/path", and so I would say that the real problem is definitely the client. However, I agree that if we're able to handle the (incorrect) request properly then we should, especially if Spacewalk does too. You patch assumes that it is always impossible for us to actually have a (real) netloc but no scheme at that point in the code, and I wasn't able to convince myself of that. So I added one more 'and' clause to the if statement "and effectiveURI_parts.netloc == 'XMLRPC'" to ensure that we can handle this one specific case properly but don't break anything else. Committing to Spacewalk master: 693a3bafef25b087cf282495e794302a4499ad1c Spacewalk 2.4 has been released. |