Bug #69655 [Com]: php -S changes MKCALENDAR request method to MKCOL

From: Date: Tue, 30 Jun 2015 14:45:13 +0000
Subject: Bug #69655 [Com]: php -S changes MKCALENDAR request method to MKCOL
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-194015@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=69655&edit=1 ID: 69655 Comment by: markus at unterwaditzer dot net Reported by: markus at unterwaditzer dot net Summary: php -S changes MKCALENDAR request method to MKCOL Status: Closed Type: Bug Package: Built-in web server Operating System: Linux PHP Version: 5.6.9 Assigned To: cmb Block user comment: N Private report: N New Comment: Hello cmb, >Certainly something to consider. However, that would not be a bug fix, but a rather a behavioral >change, which might even require an RFC. Feel free to file a respective feature request. :) I wouldn't consider it a behaviorial change, since existing PHP code is almost impossible to get broken. The change from a higher perspective is that new methods are supported: Concretely, all of them. Previous Comments: ------------------------------------------------------------------------ [2015-06-27 18:47:44] cmb@php.net The fix for this bug has been committed. Thank you for the report, and for helping us make PHP better. Wrt. MKCALENDAR, I have submitted request #69953 and will do a PR for it. ------------------------------------------------------------------------ [2015-06-27 18:07:39] cmb@php.net Automatic comment on behalf of cmb Revision: http://git.php.net/?p=php-src.git;a=commit;h=bbe28d3a55f8b129d4595e5202b7c9891a568509 Log: Fixed #69655: php -S changes MKCALENDAR request method to MKCOL ------------------------------------------------------------------------ [2015-06-27 16:31:51] cmb@php.net Indeed, Markus, the issue is not so much that MKCALENDAR is not implemented, but that the request method parsing is buggy. For unsupported methods the server is supposed to return "501 Not Implemented", but that doesn't work for several cases, such as the ones you've already mentionend. I'm working on a fix. > [...] isn't it easier (and performant enough for the builtin > server) to just pass the method on to PHP unparsed? Certainly something to consider. However, that would not be a bug fix, but a rather a behavioral change, which might even require an RFC. Feel free to file a respective feature request. :) ------------------------------------------------------------------------ [2015-05-18 23:29:08] markus at unterwaditzer dot net Original discussion: https://github.com/fruux/sabre-dav/issues/603#issuecomment-103086001 Further bugs related to the HTTP request method (in either PHP itself or the HTTP parser it uses) include: - No response/idling connection with MKCO or MKCOLL as request method. - Empty reply with M as request method. It seems http-parser includes some very complex logic to parse the HTTP method performantly: https://github.com/joyent/http-parser/blob/master/http_parser.c#L1008 Total armchair engineering here, but isn't it easier (and performant enough for the builtin server) to just pass the method on to PHP unparsed? ------------------------------------------------------------------------ [2015-05-18 21:06:17] cmb@php.net Actually, MKCALENDAR is not yet supported by the CLI server. When I do the respective curl request, I get "curl: (52) Empty reply from server" (PHP 5.6.8 and current master on Windows, curl running on Cygwin). ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=69655 -- Edit this bug report at https://bugs.php.net/bug.php?id=69655&edit=1

« previous php.bugs (#194015) next »