Hi all,
I want to stop sharing my calendar google and the guys behind. So I
tried to setup a calendar server on my NAS (WD My Book Live). Though,
after hours of searching and trying, I got to a point where I need help.
Baseline:
The NAS runs a Debian Lenny (5.0). I don't want to mess around with it
too much, so upgrading is not an option. I used the calendarserver
package for Lenny, i.e. 1.2.dfsg-8. A bit outdated, I admit, though I
wouldn't know how to install a newer version w/o a precooked Debian
package. Clients are: TB+Lighting and iPhone iOS 6.1.3. After some
effort I managed to set up the server, disable http and get all traffic
through ssl. The NAS is behind a router that forwards the ssl port.
TB+Lighting works fine.
Problem:
With the iPhone it seems as I had only write access to the calendar. On
it don't get any other entry but those added with the iPhone itself.
With the other clients I can read the entries made through the iPhone
just like all other entries. Disabling ssl and passing all traffic
cleartext didn't change anything.
To make sure it wasn't the iPhone, I set up calendarserver (2.4.dfsg-7)
on Ubuntu 12.04 LTS. Here everything works fine. However, I can't use my
notebook as a server ...
I attached the config files and the error log for the following actions:
1. restart the server,
2. try to sync with iPhone (failed),
3. sync with TB+Lightning (works).
Thanks in advance and all the best,
Eric
2013-07-03 23:43:52+0200 [-] Log opened.
2013-07-03 23:43:52+0200 [-] twistd 8.1.0 (/usr/bin/python 2.5.2) starting up
2013-07-03 23:43:52+0200 [-] reactor class: <class 'twisted.internet.selectreactor.SelectReactor'>
2013-07-03 23:43:52+0200 [-] twistedcaldav.logging.AMPLoggingFactory starting on "'/var/run/caldavd/caldavd.socket'"
2013-07-03 23:43:54+0200 [-] [caldav-8443] /usr/lib/python2.5/site-packages/twistedcaldav/tap.py:31: DeprecationWarning: mktap and related support modules are deprecated as of Twisted 8.0. Use Twisted Application Plugins with the 'twistd' command directly, as described in 'Writing a Twisted Application Plugin for twistd' chapter of the Developer Guide.
2013-07-03 23:43:54+0200 [-] [caldav-8443] from twisted.scripts.mktap import getid
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] Log opened.
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] twistd 8.1.0 (/usr/bin/python 2.5.2) starting up
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] reactor class: <class 'twisted.internet.selectreactor.SelectReactor'>
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] twisted.web2.channel.http.HTTPFactory starting on 8443
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] Starting factory <twisted.web2.channel.http.HTTPFactory instance at 0x10abd3f0>
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] set uid/gid 110/113
2013-07-03 23:43:54+0200 [twistedcaldav.logging.AMPLoggingFactory] AMPLoggingProtocol connection established (HOST:UNIXSocket('/var/run/caldavd/caldavd.socket') PEER:UNIXSocket(''))
2013-07-03 23:43:54+0200 [-] [caldav-8443] [-] AMP connection established (HOST:UNIXSocket(None) PEER:UNIXSocket('/var/run/caldavd/caldavd.socket'))
2013-07-03 23:44:15+0200 [-] [caldav-8443] [HTTPChannel,0,77.2.222.16] "Directory service <SudoDirectoryService 'Test Realm': FilePath('/etc/caldavd/sudoers.plist')> has no GUID; generating service GUID from realm name."
2013-07-03 23:44:15+0200 [-] [caldav-8443] [HTTPChannel,0,77.2.222.16] "Directory service <XMLDirectoryService 'Test Realm': FilePath('/etc/caldavd/accounts.xml')> has no GUID; generating service GUID from realm name."
2013-07-03 23:44:15+0200 [-] [caldav-8443] [HTTPChannel,0,77.2.222.16] PROPFIND /calendars/__uids__/0e4d8628-9d4b-583c-82d6-ee556dd80724/ HTTP/1.1
2013-07-03 23:44:16+0200 [-] [caldav-8443] [HTTPChannel,1,77.2.222.16] PROPFIND /calendars/__uids__/0e4d8628-9d4b-583c-82d6-ee556dd80724/ HTTP/1.1
2013-07-03 23:44:17+0200 [-] [caldav-8443] [HTTPChannel,1,77.2.222.16] PROPFIND /calendars/__uids__/0e4d8628-9d4b-583c-82d6-ee556dd80724/calendar/ HTTP/1.1
2013-07-03 23:44:18+0200 [-] [caldav-8443] [HTTPChannel,1,77.2.222.16] REPORT /calendars/__uids__/0e4d8628-9d4b-583c-82d6-ee556dd80724/calendar/ HTTP/1.1
2013-07-03 23:44:18+0200 [-] [caldav-8443] [-] Exception rendering:
2013-07-03 23:44:18+0200 [-] [caldav-8443] [-] Unhandled Error
2013-07-03 23:44:18+0200 [-] [caldav-8443] Traceback (most recent call last):
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 243, in callback
2013-07-03 23:44:18+0200 [-] [caldav-8443] self._startRunCallbacks(result)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 312, in _startRunCallbacks
2013-07-03 23:44:18+0200 [-] [caldav-8443] self._runCallbacks()
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks
2013-07-03 23:44:18+0200 [-] [caldav-8443] self.result = callback(self.result, *args, **kw)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 614, in gotResult
2013-07-03 23:44:18+0200 [-] [caldav-8443] _deferGenerator(g, deferred)
2013-07-03 23:44:18+0200 [-] [caldav-8443] --- <exception caught here> ---
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 589, in _deferGenerator
2013-07-03 23:44:18+0200 [-] [caldav-8443] result = g.next()
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twistedcaldav/method/report.py", line 64, in http_REPORT
2013-07-03 23:44:18+0200 [-] [caldav-8443] doc = doc.getResult()
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 568, in getResult
2013-07-03 23:44:18+0200 [-] [caldav-8443] self.result.raiseException()
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks
2013-07-03 23:44:18+0200 [-] [caldav-8443] self.result = callback(self.result, *args, **kw)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/web2/dav/util.py", line 66, in gotAllData
2013-07-03 23:44:18+0200 [-] [caldav-8443] return filter(result)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/web2/dav/util.py", line 79, in parse
2013-07-03 23:44:18+0200 [-] [caldav-8443] doc = davxml.WebDAVDocument.fromString(xml)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/web2/dav/element/parser.py", line 223, in parse
2013-07-03 23:44:18+0200 [-] [caldav-8443] parser.parse(source)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/_xmlplus/sax/expatreader.py", line 109, in parse
2013-07-03 23:44:18+0200 [-] [caldav-8443] xmlreader.IncrementalParser.parse(self, source)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/_xmlplus/sax/xmlreader.py", line 123, in parse
2013-07-03 23:44:18+0200 [-] [caldav-8443] self.feed(buffer)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/_xmlplus/sax/expatreader.py", line 216, in feed
2013-07-03 23:44:18+0200 [-] [caldav-8443] self._parser.Parse(data, isFinal)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/_xmlplus/sax/expatreader.py", line 364, in end_element_ns
2013-07-03 23:44:18+0200 [-] [caldav-8443] self._cont_handler.endElementNS(pair, None)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twisted/web2/dav/element/parser.py", line 178, in endElementNS
2013-07-03 23:44:18+0200 [-] [caldav-8443] element = top["class"](*top["children"], **top["attributes"])
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twistedcaldav/caldavxml.py", line 1348, in __init__
2013-07-03 23:44:18+0200 [-] [caldav-8443] super(TimeRange, self).__init__(*children, **attributes)
2013-07-03 23:44:18+0200 [-] [caldav-8443] File "/usr/lib/python2.5/site-packages/twistedcaldav/caldavxml.py", line 87, in __init__
2013-07-03 23:44:18+0200 [-] [caldav-8443] self.end = parse_date_or_datetime(attributes["end" ])
2013-07-03 23:44:18+0200 [-] [caldav-8443] exceptions.KeyError: 'end'
2013-07-03 23:44:18+0200 [-] [caldav-8443]
2013-07-03 23:46:56+0200 [-] [caldav-8443] [HTTPChannel,2,77.2.222.16] OPTIONS /calendars/users/eric_test/calendar/ HTTP/1.1
2013-07-03 23:46:56+0200 [-] [caldav-8443] [HTTPChannel,2,77.2.222.16] PROPFIND /calendars/users/eric_test/calendar/ HTTP/1.1
2013-07-03 23:46:56+0200 [-] [caldav-8443] [HTTPChannel,2,77.2.222.16] PROPFIND /calendars/users/eric_test/calendar/ HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2006-2007 Apple Inc. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!--
Public network address information
This is the server's public network address, which is provided to
clients in URLs and the like. It may or may not be the network
address that the server is listening to directly, though it is by
default. For example, it may be the address of a load balancer or
proxy which forwards connections to the server.
-->
<!-- Network host name -->
<key>ServerHostName</key>
<string>espressonas</string>
<!-- HTTP port [0 = disable HTTP] -->
<key>HTTPPort</key>
<integer>0</integer>
<!-- SSL port [0 = disable HTTPS] -->
<!-- (Must also configure SSLCertificate and SSLPrivateKey below) -->
<key>SSLPort</key>
<integer>8443</integer>
<!--
Network address configuration information
This configures the actual network address that the server binds to.
-->
<!-- List of IP addresses to bind to [empty = all] -->
<key>BindAddresses</key>
<array><string></string></array>
<!-- List of port numbers to bind to for HTTP [empty = same as "Port"] -->
<key>BindHTTPPorts</key>
<array></array>
<!-- List of port numbers to bind to for SSL [empty = same as "SSLPort"] -->
<key>BindSSLPorts</key>
<array></array>
<!--
Data Store
-->
<!-- Data root -->
<key>DataRoot</key>
<string>/var/run/caldavd</string>
<!-- Document root -->
<key>DocumentRoot</key>
<string>/var/spool/caldavd</string>
<!-- User quota (in bytes) -->
<key>UserQuota</key>
<integer>104857600</integer><!-- 100Mb -->
<!-- Attachment size limit (in bytes) -->
<key>MaximumAttachmentSize</key>
<integer>1048576</integer><!-- 1Mb -->
<!--
Directory service
A directory service provides information about principals (eg.
users, groups, locations and resources) to the server.
A variety of directory services are available for use.
-->
<!-- XML File Directory Service -->
<key>DirectoryService</key>
<dict>
<key>type</key>
<string>twistedcaldav.directory.xmlfile.XMLDirectoryService</string>
<key>params</key>
<dict>
<key>xmlFile</key>
<string>/etc/caldavd/accounts.xml</string>
</dict>
</dict>
<!-- Open Directory Service
<key>DirectoryService</key>
<dict>
<key>type</key>
<string>twistedcaldav.directory.appleopendirectory.OpenDirectoryService</string>
<key>params</key>
<dict>
<key>node</key>
<string>/Search</string>
<key>requireComputerRecord</key>
<true/>
</dict>
</dict>
-->
<!--
Special principals
These principals are granted special access and/or perform
special roles on the server.
-->
<!-- Principals with "DAV:all" access (relative URLs) -->
<key>AdminPrincipals</key>
<array>
<!-- <string>/principals/users/admin/</string> -->
</array>
<!-- Principals that can pose as other principals -->
<key>SudoersFile</key>
<string>/etc/caldavd/sudoers.plist</string>
<!-- Create "proxy access" principals -->
<key>EnableProxyPrincipals</key>
<true/>
<!--
Authentication
-->
<key>Authentication</key>
<dict>
<!-- Clear text; best avoided -->
<key>Basic</key>
<dict>
<key>Enabled</key>
<false/>
</dict>
<!-- Digest challenge/response -->
<key>Digest</key>
<dict>
<key>Enabled</key>
<true/>
<key>Algorithm</key>
<string>md5</string>
<key>Qop</key>
<string></string>
</dict>
<!-- Kerberos/SPNEGO -->
<key>Kerberos</key>
<dict>
<key>Enabled</key>
<true/>
<key>ServicePrincipal</key>
<string></string>
</dict>
</dict>
<!--
Logging
-->
<key>Verbose</key>
<false/>
<!-- Apache-style access log -->
<key>AccessLogFile</key>
<string>/var/log/caldavd/access.log</string>
<key>RotateAccessLog</key>
<false/>
<!-- Server activity log -->
<key>ErrorLogFile</key>
<string>/var/log/caldavd/error.log</string>
<!-- Server statistics file -->
<key>ServerStatsFile</key>
<string>/var/spool/caldavd/stats.plist</string>
<!-- Server process ID file -->
<key>PIDFile</key>
<string>/var/run/caldavd/caldavd.pid</string>
<!--
SSL/TLS
-->
<!-- Public key -->
<key>SSLCertificate</key>
<string>/etc/ssl/certs/ssl-cert-snakeoil.pem</string>
<!-- Private key -->
<key>SSLPrivateKey</key>
<string>/etc/ssl/private/ssl-cert-snakeoil.key</string>
<!--
Process management
-->
<key>UserName</key>
<string>caldavd</string>
<key>GroupName</key>
<string>caldavd</string>
<key>ProcessType</key>
<string>Combined</string>
<key>MultiProcess</key>
<dict>
<key>ProcessCount</key>
<integer>1</integer> <!-- 0 = one per CPU core -->
</dict>
<!--
Service ACLs
-->
<key>EnableSACLs</key>
<true/>
<!--
Non-standard CalDAV extensions
-->
<!-- Calendar Drop Box -->
<key>EnableDropBox</key>
<true/>
<!-- Drop Box Notifications -->
<key>EnableNotifications</key>
<true/>
<!--
Miscellaneous items
-->
<key>Twisted</key>
<dict>
<key>twistd</key>
<string>/usr/bin/twistd</string>
</dict>
<key>PythonDirector</key>
<dict>
<key>pydir</key>
<string>/usr/share/pydirector/pydir.py</string>
<key>ControlSocket</key>
<string>/var/run/caldavd/caldavd-pydir.sock</string>
</dict>
<!-- A unix socket used for communication between the child and master processes. -->
<key>ControlSocket</key>
<string>/var/run/caldavd/caldavd.socket</string>
<!-- Support for Content-Encoding compression options as specified in RFC2616 Section 3.5 -->
<key>ResponseCompression</key>
<true/>
</dict>
</plist>
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2006-2007 Apple Inc. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE accounts SYSTEM "accounts.dtd">
<accounts realm="Test Realm">
<user>
<uid>admin</uid>
<password>admin</password>
<name>Super User</name>
</user>
<user>
<uid>eric_test</uid>
<password>test</password>
<name>Test</name>
</user>
<group>
<uid>users</uid>
<password>users</password>
<name>Users Group</name>
<members>
<member type="users">test</member>
</members>
</group>
</accounts>
_______________________________________________
calendarserver-users mailing list
calendarserver-users@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/calendarserver-users