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
AgenDAV 2.0.0 doesn’t show events from SabreDAV 3.2 Server #191
Comments
If you do a curl request with |
@evert after some testing, I have seen that cURL always sends the first request with AgenDAV uses Guzzle, which internally uses cURL, so uses the same approach. I don't know if the standard requires the first request to be fully sent (haven't been able to find anything on this topic), but this was not an issue with older SabreDAV releases. SabreDAV 3.2.0 returns a 500 error on Sample PROPFIND request that works:
Sample
@evert do you think this can be considered as a SabreDAV issue? |
FWIW, I "fixed" this with a local patch to the vendored version of guzzle: --- agendav-2.0.0/web/vendor/guzzlehttp/guzzle/src/Client.php.orig 2017-01-05 04:45:53.426094472 +0000
+++ agendav-2.0.0/web/vendor/guzzlehttp/guzzle/src/Client.php 2017-01-05 04:45:08.806092753 +0000
@@ -347,7 +347,7 @@
break;
case 'digest':
// @todo: Do not rely on curl
- $options['curl'][CURLOPT_HTTPAUTH] = CURLAUTH_DIGEST;
+ $options['curl'][CURLOPT_HTTPAUTH] = CURLAUTH_ANY;
$options['curl'][CURLOPT_USERPWD] = "$value[0]:$value[1]";
break;
} I leave it to others to decide what the correct thing to do here actually is. 😄 Inspired by: |
This sounds like a bug to me, frankly. Might be worth opening a ticket somewhere. |
Finally found some time to file an issue: fruux/sabre-dav#932 |
@logic you saved the day - it solved the problem |
This bug also renders AgenDAV useless with Baikal. The workaround at #191 (comment) fixes it. |
Thank you! #191 (comment) This error still shows up with this setup: AgenDAV 2.2.0 Just changed the $options['curl'][CURLOPT_HTTPAUTH] to CURLAUTH_ANY and everything works as expected, thank you. |
Suggest editing the title to reflect that this affects multiple clients. |
I just ran into this now with AgenDAV 2.6.0 and Baikal 0.9.3. The "fix" by logic still works.
|
This still seems to be correct, I can also confirm functionality with the "fix". |
Hello,
like @yreveill mentioned in #177 there is an issue with agendav-2.0.0 and sabredav 3.2
AgenDAV lists all the correct calendars but not the events:
Interface error
Error loading events from calendar /calendarserver.php/calendars/foo/4cb0d1e9-0223-41a7-9040-6f9eff9826b5/
Apache24 Log (SabreDav vhost):
$IP - - [$DATE] "REPORT /calendarserver.php/calendars/foo/4cb0d1e9-0223-41a7-9040-6f9eff9826b5/ HTTP/1.1" 500 275
AgenDAV Log:
[2016-11-28 15:31:14] agendav.WARNING: Received unexpected HTTP code 500 (Server error:
REPORT http://myserver.com/calendarserver.php/calendars/foo/4cb0d1e9-0223-41a7-9040-6f9eff9826b5/
resulted in a500 Internal Server Error
response: (truncated...) ) for input: Symfony\Component\HttpFoundation\ParameterBag::__set_state(array( 'parameters' => array ( 'calendar' => '/calendarserver.php/calendars/foo/4cb0d1e9-0223-41a7-9040-6f9eff9826b5/', 'start' => '2016-10-30', 'end' => '2016-12-11', 'timezone' => 'Europe/Berlin', '_' => '1480341200251', ), )) [] [][2016-11-28 15:31:14] agendav.INFO: < 500 [] []
It seems that SabreDAV doesn’t like the REPORT method since I get valid output using GET for -X in the following:
% curl -X REPORT --digest --user foo:foo -o - http://myserver.com/calendarserver.php/calendars/foo/4cb0d1e9-0223-41a7-9040-6f9eff9826b5/
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:sabredav-version>3.2.0</s:sabredav-version>
<s:exception>ErrorException</s:exception>
<s:message>XMLReader::XML(): Empty string supplied as input</s:message>
</d:error>
Thankful for any help!
The text was updated successfully, but these errors were encountered: