[CalendarServer-changes] [5131] CalendarServer/trunk

source_changes at macosforge.org source_changes at macosforge.org
Tue Feb 16 14:15:52 PST 2010


Revision: 5131
          http://trac.macosforge.org/projects/calendarserver/changeset/5131
Author:   glyph at apple.com
Date:     2010-02-16 14:15:49 -0800 (Tue, 16 Feb 2010)
Log Message:
-----------
Separate default carddavd configuration.

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/tap/carddav.py
    CalendarServer/trunk/support/Makefile.Apple
    CalendarServer/trunk/twistedcaldav/stdconfig.py

Added Paths:
-----------
    CalendarServer/trunk/conf/carddavd-apple.plist

Modified: CalendarServer/trunk/calendarserver/tap/carddav.py
===================================================================
--- CalendarServer/trunk/calendarserver/tap/carddav.py	2010-02-16 21:45:07 UTC (rev 5130)
+++ CalendarServer/trunk/calendarserver/tap/carddav.py	2010-02-16 22:15:49 UTC (rev 5131)
@@ -31,12 +31,13 @@
 from twistedcaldav.directory.principal import DirectoryPrincipalProvisioningResource
 
 from twistedcaldav.config import config
+from twistedcaldav.stdconfig import DEFAULT_CARDDAV_CONFIG_FILE
 from twistedcaldav.static import AddressBookHomeProvisioningFile, DirectoryBackedAddressBookFile
 from twext.log import Logger
 
 log = Logger()
 
-from calendarserver.tap.caldav import CalDAVServiceMaker
+from calendarserver.tap.caldav import CalDAVServiceMaker, CalDAVOptions
 
 try:
     from twistedcaldav.authkerb import NegotiateCredentialFactory
@@ -57,11 +58,23 @@
 
 
 
+class CardDAVOptions(CalDAVOptions):
+    """
+    The same as L{CalDAVOptions}, but with a different default config file.
+    """
+
+    optParameters = [[
+        "config", "f", DEFAULT_CARDDAV_CONFIG_FILE, "Path to configuration file."
+    ]]
+
+
+
 class CardDAVServiceMaker (CalDAVServiceMaker):
     implements(IPlugin, IServiceMaker)
 
     tapname = "carddav"
     description = "Darwin Contacts Server"
+    options = CardDAVOptions
 
     #
     # Default resource classes

Added: CalendarServer/trunk/conf/carddavd-apple.plist
===================================================================
--- CalendarServer/trunk/conf/carddavd-apple.plist	                        (rev 0)
+++ CalendarServer/trunk/conf/carddavd-apple.plist	2010-02-16 22:15:49 UTC (rev 5131)
@@ -0,0 +1,704 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+    Copyright (c) 2006-2010 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 [empty = system host name] -->
+    <key>ServerHostName</key>
+    <string></string> <!-- The hostname clients use when connecting -->
+
+    <key>EnableCardDAV</key>
+    <true/>
+
+    <key>EnableCalDAV</key>
+    <false/>
+
+    <key>ConfigRoot</key>
+    <string>/etc/carddavd</string>
+
+    <key>LogRoot</key>
+    <string>/var/log/carddavd</string>
+
+    <key>PIDFile</key>
+    <string>carddavd.pid</string>
+
+    <key>GlobalStatsSocket</key>
+    <string>carddavd-stats.sock</string>
+
+    <key>ControlSocket</key>
+    <string>carddavd.sock</string>
+
+    <!-- HTTP port [0 = disable HTTP] -->
+    <key>HTTPPort</key>
+    <integer>8800</integer>
+
+    <!-- SSL port [0 = disable HTTPS] -->
+    <!-- (Must also configure SSLCertificate and SSLPrivateKey below) -->
+    <!--
+    <key>SSLPort</key>
+    <integer>8443</integer>
+    -->
+
+    <!-- Redirect non-SSL ports to an SSL port (if configured for SSL) -->
+    <key>RedirectHTTPToHTTPS</key>
+    <false/>
+
+
+    <!--
+        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>
+    </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
+      -->
+
+    <!-- Server root -->
+    <key>ServerRoot</key>
+    <string>/Library/CalendarServer</string>
+
+    <!-- Data root -->
+    <key>DataRoot</key>
+    <string>Data</string>
+
+    <!-- Document root -->
+    <key>DocumentRoot</key>
+    <string>Documents</string>
+
+    <!-- Configuration root -->
+    <key>ConfigRoot</key>
+    <string>/etc/carddavd</string>
+
+    <!-- Log root -->
+    <key>LogRoot</key>
+    <string>/var/log/carddavd</string>
+
+    <!-- Run root -->
+    <key>RunRoot</key>
+    <string>/var/run</string>
+
+    <!-- Child aliases -->
+    <key>Aliases</key>
+    <dict>
+      <!--
+      <key>foo</key>
+      <dict>
+        <key>path</key>
+        <string>/path/to/foo</string>
+      </dict>
+       -->
+    </dict>
+
+    <!-- User quota (in bytes) -->
+    <key>UserQuota</key>
+    <integer>104857600</integer><!-- 100Mb -->
+
+    <!-- Attachment size limit (in bytes) -->
+    <key>MaximumAttachmentSize</key>
+    <integer>1048576</integer><!-- 1Mb -->
+
+    <!-- Maximum number of unique attendees per entire event -->
+    <!-- 0 for no limit -->
+    <key>MaxAttendeesPerInstance</key>
+    <integer>100</integer>
+
+    <!-- Maximum number of instances allowed for a single RRULE -->
+    <!-- 0 for no limit -->
+    <key>MaxInstancesForRRULE</key>
+    <integer>400</integer>
+
+
+    <!--
+        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>accounts.xml</string>
+      </dict>
+    </dict>
+    -->
+    
+    <!-- Open Directory Service (Mac OS X) -->
+    <key>DirectoryService</key>
+    <dict>
+      <key>type</key>
+      <string>twistedcaldav.directory.appleopendirectory.OpenDirectoryService</string>
+      
+      <key>params</key>
+      <dict>
+        <key>node</key>
+        <string>/Search</string>
+        <key>cacheTimeout</key>
+        <integer>30</integer>
+      </dict>
+    </dict>
+
+    <!--
+        Augment service
+
+        Augments for the directory service records to add calendar specific attributes.
+
+        A variety of augment services are available for use.
+        When using a partitioned server, a service that can be accessed from each host will be needed.
+      -->
+
+    <!-- XML File Augment Service -->
+    <key>AugmentService</key>
+    <dict>
+      <key>type</key>
+      <string>twistedcaldav.directory.augment.AugmentXMLDB</string>
+      
+      <key>params</key>
+      <dict>
+        <key>xmlFiles</key>
+        <array>
+	      <string>augments.xml</string>
+        </array>
+      </dict>
+    </dict>
+    
+    <!-- Sqlite Augment Service -->
+    <!--
+    <key>AugmentService</key>
+    <dict>
+      <key>type</key>
+      <string>twistedcaldav.directory.augment.AugmentSqliteDB</string>
+      
+      <key>params</key>
+      <dict>
+        <key>dbpath</key>
+        <string>augments.sqlite</string>
+      </dict>
+    </dict>
+     -->
+
+    <!-- PostgreSQL Augment Service -->
+    <!--
+    <key>AugmentService</key>
+    <dict>
+      <key>type</key>
+      <string>twistedcaldav.directory.augment.AugmentPostgreSQLDB</string>
+      
+      <key>params</key>
+      <dict>
+        <key>host</key>
+        <string>localhost</string>
+        <key>database</key>
+        <string>augments</string>
+      </dict>
+    </dict>
+     -->
+
+    <!-- PostgreSQL ProxyDB Service -->
+    <!--
+    <key>ProxyDBService</key>
+    <dict>
+      <key>type</key>
+      <string>twistedcaldav.directory.calendaruserproxy.ProxyPostgreSQLDB</string>
+      
+      <key>params</key>
+      <dict>
+        <key>host</key>
+        <string>localhost</string>
+        <key>database</key>
+        <string>proxies</string>
+      </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/__uids__/AEB68DD7-D2B8-4D4D-A574-2A4533DF36A4/</string> -->
+    </array>
+
+    <!-- Principals with "DAV:read" access (relative URLs) -->
+    <key>ReadPrincipals</key>
+    <array>
+      <!-- <string>/principals/__uids__/983C8238-FB6B-4D92-9242-89C0A39E5F81/</string> -->
+    </array>
+
+    <!-- Principals that can pose as other principals -->
+    <key>SudoersFile</key>
+    <string>sudoers.plist</string>
+
+    <!-- Create "proxy access" principals -->
+    <key>EnableProxyPrincipals</key>
+    <true/>
+
+
+    <!--
+        Permissions
+      -->
+
+    <!-- Anonymous read access for root resource -->
+    <key>EnableAnonymousReadRoot</key>
+    <false/>
+
+    <!-- Anonymous read access for resource hierarchy -->
+    <key>EnableAnonymousReadNav</key>
+    <false/>
+
+    <!-- Enables directory listings for principals -->
+    <key>EnablePrincipalListings</key>
+    <false/>
+
+    <!-- Render calendar collections as a monolithic iCalendar object -->
+    <key>EnableMonolithicCalendars</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>
+
+      <!-- Wikiserver authentication (Mac OS X) -->
+      <key>Wiki</key>
+      <dict>
+        <key>Enabled</key>
+        <true/>
+      </dict>
+
+    </dict>
+
+
+    <!--
+        Logging
+      -->
+
+    <!-- Apache-style access log -->
+    <key>AccessLogFile</key>
+    <string>access.log</string>
+    <key>RotateAccessLog</key>
+    <true/>
+
+    <!-- Server activity log -->
+    <key>ErrorLogFile</key>
+    <string>error.log</string>
+
+    <!-- Log levels -->
+    <key>DefaultLogLevel</key>
+    <string>warn</string> <!-- debug, info, warn, error -->
+
+    <!-- Global server stats --> 
+    <key>GlobalStatsSocket</key> 
+    <string>carddavd-stats.sock</string> 
+
+    <!-- Server process ID file -->
+    <key>PIDFile</key>
+    <string>carddavd.pid</string>
+
+
+    <!--
+        SSL/TLS
+      -->
+
+    <!-- Public key -->
+    <key>SSLCertificate</key>
+    <string></string>
+
+    <!-- SSL authority chain (for intermediate certs) -->
+    <key>SSLAuthorityChain</key>
+    <string></string>
+
+    <!-- Private key -->
+    <key>SSLPrivateKey</key>
+    <string></string>
+
+
+    <!--
+        Process management
+      -->
+
+    <key>UserName</key>
+    <string>calendar</string>
+
+    <key>GroupName</key>
+    <string>calendar</string>
+
+    <key>ProcessType</key>
+    <string>Combined</string>
+
+    <key>MultiProcess</key>
+    <dict>
+      <key>ProcessCount</key>
+      <integer>0</integer> <!-- 0 = larger of: 4 or (2 * CPU count) -->
+    </dict>
+
+
+    <!--
+        Notifications
+      -->
+
+    <key>Notifications</key>
+    <dict>
+      <!-- Time spent coalescing notifications before delivery -->
+      <key>CoalesceSeconds</key>
+      <integer>3</integer>
+
+      <key>Services</key>
+      <dict>
+        <key>XMPPNotifier</key>
+        <dict>
+          <!-- XMPP notification service -->
+          <key>Service</key>
+          <string>twistedcaldav.notify.XMPPNotifierService</string>
+          <key>Enabled</key>
+          <false/>
+
+          <!-- XMPP host and port to contact -->
+          <key>Host</key>
+          <string>xmpp.host.name</string>
+          <key>Port</key>
+          <integer>5222</integer>
+
+          <!-- Jabber ID and password for the server -->
+          <key>JID</key>
+          <string>jid at xmpp.host.name/resource</string>
+          <key>Password</key>
+          <string>password_goes_here</string>
+
+          <!-- PubSub service address -->
+          <key>ServiceAddress</key>
+          <string>pubsub.xmpp.host.name</string>
+        </dict>
+      </dict>
+    </dict>
+
+
+    <!--
+        Server-to-server protocol
+      -->
+
+    <key>Scheduling</key>
+    <dict>
+
+      <!-- CalDAV protocol options -->
+      <key>CalDAV</key>
+      <dict>
+        <key>EmailDomain</key>
+        <string></string>
+        <key>HTTPDomain</key>
+        <string></string>
+        <key>AddressPatterns</key>
+        <array>
+        </array>
+      </dict>
+
+      <!-- iSchedule protocol options -->
+      <key>iSchedule</key>
+      <dict>
+        <key>Enabled</key>
+        <false/>
+        <key>AddressPatterns</key>
+        <array>
+        </array>
+        <key>Servers</key>
+        <string>servertoserver.xml</string>
+      </dict>
+
+      <!-- iMIP protocol options -->
+      <key>iMIP</key>
+      <dict>
+        <key>Enabled</key>
+        <false/>
+        <key>MailGatewayServer</key>
+        <string>localhost</string>
+        <key>MailGatewayPort</key>
+        <integer>62310</integer>
+        <key>Sending</key>
+        <dict>
+          <key>Server</key>
+          <string></string>
+          <key>Port</key>
+          <integer>587</integer>
+          <key>UseSSL</key>
+          <true/>
+          <key>Username</key>
+          <string></string>
+          <key>Password</key>
+          <string></string>
+          <key>Address</key>
+          <string></string> <!-- Address email will be sent from -->
+        </dict>
+        <key>Receiving</key>
+        <dict>
+          <key>Server</key>
+          <string></string>
+          <key>Port</key>
+          <integer>995</integer>
+          <key>Type</key>
+          <string></string> <!-- Either "pop" or "imap" -->
+          <key>UseSSL</key>
+          <true/>
+          <key>Username</key>
+          <string></string>
+          <key>Password</key>
+          <string></string>
+          <key>PollingSeconds</key>
+          <integer>30</integer>
+        </dict>
+        <key>AddressPatterns</key>
+        <array>
+          <string>mailto:.*</string>
+        </array>
+      </dict>
+
+    </dict>
+
+
+    <!--
+        Free-busy URL protocol
+      -->
+
+    <key>FreeBusyURL</key>
+    <dict>
+      <key>Enabled</key>
+      <true/>
+      <key>TimePeriod</key>
+      <integer>14</integer>
+      <key>AnonymousAccess</key>
+      <false/>
+    </dict>
+
+
+    <!--
+        Non-standard CalDAV extensions
+      -->
+
+    <!-- Calendar Drop Box -->
+    <key>EnableDropBox</key>
+    <true/>
+
+    <!-- Private Events -->
+    <key>EnablePrivateEvents</key>
+    <true/>
+
+    <!-- Timezone Service -->
+    <key>EnableTimezoneService</key>
+    <true/>
+
+
+    <!--
+        Miscellaneous items
+      -->
+
+    <!-- Service ACLs (Mac OS X) -->
+    <key>EnableSACLs</key>
+    <true/>
+
+    <!-- Web-based administration -->
+    <key>EnableWebAdmin</key>
+    <true/>
+
+    <key>DirectoryAddressBook</key>
+    <dict>
+        <key>type</key>
+        <string>twistedcaldav.directory.opendirectorybacker.OpenDirectoryBackingService</string>
+      
+        <key>params</key>
+        <dict>
+     	  <!-- Search for people records -->
+          <key>queryPeopleRecords</key>
+          <true/>
+     	  <!-- Search for people records in this directory service node -->
+          <key>peopleNode</key>
+          <string>/Search/Contacts</string>
+     	  <!-- Search for user records -->
+          <key>queryUserRecords</key>
+          <true/>
+          <key>userNode</key>
+     	  <!-- Search for user records in this directory service node -->
+          <string>/Search</string>
+      	  <!-- query in directory service local node -->
+          <key>queryDSLocal</key>
+          <false/>
+      	  <!-- minutes to keep directory service local node in memory before refresh -->
+          <key>dsLocalCacheTimeout</key>
+          <integer>30</integer>
+     	  <!-- approx. maximum number of records returned from a directory service query -->
+          <key>maxDSQueryRecords</key>
+          <integer>150</integer> <!-- use 0 to have server calculate the maximum based on MaxAddressBookQueryResults, MaxAddressBookMultigetHrefs keys -->
+     	  <!-- ignore system records like "root" when creating vCards -->
+          <key>ignoreSystemRecords</key>
+          <true/>
+       	  <!-- True to use a directory service query for each addressBook-query to the directory address book -->
+          <key>liveQuery</key>
+          <true/>
+       	  	  <!-- fake the eTag.  If false all directory service attributes are used to calculate the eTag -->
+              <key>fakeETag</key>
+              <true/>
+          <!-- True to store the results on disk after a directory service query. True is usually much slower. -->
+          <key>cacheQuery</key>
+          <false/>
+           	  <!-- If cacheQuery is True and liveQuery is False, the minutes to keep the results from a complete directory service all record query. -->
+              <key>cacheTimeout</key>
+              <integer>30</integer>
+          <!-- add this key to use additional directory service attributes in queries.  Needed for some queries with directory service templates.
+          <key>additionalAttributes</key>
+          <array>
+             <string>dsAttrTypeNative:sampleAIMPreferred</string>
+             <string>dsAttrTypeNative:sampleManager</string>
+          </array>
+          -->
+          <!-- add this key to limit directory service attributes used to make vCard properties
+          		When using directory service templates, list should include only mapped attributes.
+          <key>allowedAttributes</key>
+          <array>
+            <string>dsAttrTypeStandard:AddressLine1</string>
+            <string>dsAttrTypeStandard:AddressLine2</string>
+            <string>dsAttrTypeStandard:AddressLine3</string>
+            <string>dsAttrTypeStandard:Birthday</string>
+            <string>dsAttrTypeStandard:Building</string>
+            <string>dsAttrTypeStandard:City</string>
+            <string>dsAttrTypeStandard:Comment</string>
+            <string>dsAttrTypeStandard:Company</string>
+            <string>dsAttrTypeStandard:Country</string>
+            <string>dsAttrTypeStandard:CreationTimestamp</string>
+            <string>dsAttrTypeStandard:Department</string>
+            <string>dsAttrTypeStandard:EMailAddress</string>
+            <string>dsAttrTypeStandard:EMailContacts</string>
+            <string>dsAttrTypeStandard:FAXNumber</string>
+            <string>dsAttrTypeStandard:FirstName</string>
+            <string>dsAttrTypeStandard:HomePhoneNumber</string>
+            <string>dsAttrTypeStandard:IMHandle</string>
+            <string>dsAttrTypeStandard:JPEGPhoto</string>
+            <string>dsAttrTypeStandard:JobTitle</string>
+            <string>dsAttrTypeStandard:LastName</string>
+            <string>dsAttrTypeStandard:MapCoordinates</string>
+            <string>dsAttrTypeStandard:MiddleName</string>
+            <string>dsAttrTypeStandard:MobileNumber</string>
+            <string>dsAttrTypeStandard:ModificationTimestamp</string>
+            <string>dsAttrTypeStandard:NamePrefix</string>
+            <string>dsAttrTypeStandard:NameSuffix</string>
+            <string>dsAttrTypeStandard:NickName</string>
+            <string>dsAttrTypeStandard:Note</string>
+            <string>dsAttrTypeStandard:OrganizationName</string>
+            <string>dsAttrTypeStandard:PGPPublicKey</string>
+            <string>dsAttrTypeStandard:PagerNumber</string>
+            <string>dsAttrTypeStandard:PhoneContacts</string>
+            <string>dsAttrTypeStandard:PhoneNumber</string>
+            <string>dsAttrTypeStandard:PostalAddress</string>
+            <string>dsAttrTypeStandard:PostalAddressContacts</string>
+            <string>dsAttrTypeStandard:PostalCode</string>
+            <string>dsAttrTypeStandard:Relationships</string>
+            <string>dsAttrTypeStandard:State</string>
+            <string>dsAttrTypeStandard:Street</string>
+            <string>dsAttrTypeStandard:URL</string>
+            <string>dsAttrTypeStandard:UserCertificate</string>
+            <string>dsAttrTypeStandard:UserPKCS12Data</string>
+            <string>dsAttrTypeStandard:UserSMIMECertificate</string>
+            <string>dsAttrTypeStandard:WeblogURI</string>
+          </array>
+          -->
+        </dict>
+    </dict>
+      
+    <!--  allow unauthenticated users to access the directory address book -->
+    <key>AnonymousDirectoryAddressBookAccess</key>
+    <false/>
+    
+    <!--  enable search address book in user's home -->
+    <key>EnableSearchAddressBook</key>
+    <false/>
+    
+    <!--  enable find share report -->
+    <key>EnableFindSharedReport</key>
+    <false/>
+  </dict>
+</plist>

Modified: CalendarServer/trunk/support/Makefile.Apple
===================================================================
--- CalendarServer/trunk/support/Makefile.Apple	2010-02-16 21:45:07 UTC (rev 5130)
+++ CalendarServer/trunk/support/Makefile.Apple	2010-02-16 22:15:49 UTC (rev 5131)
@@ -98,6 +98,7 @@
 	$(_v) $(INSTALL_FILE) "$(Sources)/conf/caldavd-partitioning-secondary.plist" "$(DSTROOT)$(ETCDIR)/caldavd/caldavd-partitioning-secondary.plist"
 	$(_v) $(INSTALL_FILE) "$(Sources)/conf/partitions.plist" "$(DSTROOT)$(ETCDIR)/caldavd/partitions.plist"
 	$(_v) $(INSTALL_FILE) "$(Sources)/conf/servertoserver.xml" "$(DSTROOT)$(ETCDIR)/caldavd/servertoserver.xml"
+	$(_v) $(INSTALL_FILE) "$(Sources)/conf/caldavd-apple.plist" "$(DSTROOT)$(ETCDIR)/carddavd/carddavd.plist"
 	$(_v) chmod -R ugo+r "$(DSTROOT)$(PY_HOME)"
 	$(_v) for f in $$(find "$(DSTROOT)$(ETCDIR)" -type f ! -name '*.default'); do cp "$${f}" "$${f}.default"; done
 	$(_v) $(INSTALL_FILE) "$(Sources)/conf/servertoserver.dtd" "$(DSTROOT)$(ETCDIR)/caldavd/servertoserver.dtd"

Modified: CalendarServer/trunk/twistedcaldav/stdconfig.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/stdconfig.py	2010-02-16 21:45:07 UTC (rev 5130)
+++ CalendarServer/trunk/twistedcaldav/stdconfig.py	2010-02-16 22:15:49 UTC (rev 5131)
@@ -35,6 +35,7 @@
 log = Logger()
 
 DEFAULT_CONFIG_FILE = "/etc/caldavd/caldavd.plist"
+DEFAULT_CARDDAV_CONFIG_FILE = "/etc/carddavd/carddavd.plist"
 
 DEFAULT_SERVICE_PARAMS = {
     "twistedcaldav.directory.xmlfile.XMLDirectoryService": {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20100216/68bb49c0/attachment-0001.html>


More information about the calendarserver-changes mailing list