Description
XMLRPC is broken for server types like CGI or FastCGI because the POST data in the input buffer is "copied into /dev/null" because of the setup_args call in RequestBase.__init__.
Steps to reproduce
- Try to do an XMLRPC request to one of the servers above
Details
This wiki if it was not twisted.
Workaround
Do not use XMLRPC, use another server type.
Discussion
1 19:50:12 < xorAxAx> ThomasWaldmann: why do you need the post data in request.__init__?
2 19:50:17 < xorAxAx> "# MOVED: this was in run() method, but moved here for auth module being able to use it"
3 19:50:29 < xorAxAx> which auth module needs the POST data?
4 19:50:35 < xorAxAx> this breaks xmlrpc
5 19:50:50 < xorAxAx> for most servers that handle post data via the requestbase code
Plan
- Priority:
- Assigned to:
- Status: Was not fixed by "some patches ago (ca. patch-300..310)", but
was fixed some time ago by this code in RequestBase.init:
if not self.query_string.startswith('action=xmlrpc'): self.args = self.form = self.setup_args()