[CalendarServer-changes] [9782] CalDAVTester/trunk

source_changes at macosforge.org source_changes at macosforge.org
Thu Sep 6 08:21:25 PDT 2012


Revision: 9782
          http://trac.macosforge.org/projects/calendarserver/changeset/9782
Author:   cdaboo at apple.com
Date:     2012-09-06 08:21:24 -0700 (Thu, 06 Sep 2012)
Log Message:
-----------
Enable use of ssl via a command line switch rather than an option in the serverinfo.xml file.

Modified Paths:
--------------
    CalDAVTester/trunk/QuickLook-All
    CalDAVTester/trunk/QuickLook-CalDAV
    CalDAVTester/trunk/QuickLook-CardDAV
    CalDAVTester/trunk/README.txt
    CalDAVTester/trunk/Validation-All
    CalDAVTester/trunk/Validation-CalDAV
    CalDAVTester/trunk/Validation-CardDAV
    CalDAVTester/trunk/odsetup.py
    CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml
    CalDAVTester/trunk/scripts/server/serverinfo-template.xml
    CalDAVTester/trunk/scripts/server/serverinfo.dtd
    CalDAVTester/trunk/scripts/server/serverinfo.xml
    CalDAVTester/trunk/src/manager.py
    CalDAVTester/trunk/src/request.py
    CalDAVTester/trunk/src/serverinfo.py
    CalDAVTester/trunk/src/xmlDefs.py

Removed Paths:
-------------
    CalDAVTester/trunk/scripts/server/sslserverinfo.xml

Modified: CalDAVTester/trunk/QuickLook-All
===================================================================
--- CalDAVTester/trunk/QuickLook-All	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/QuickLook-All	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -20,18 +20,18 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
-CalDAV/caldavIOP.xml \
-CalDAV/errors.xml \
-CalDAV/get.xml \
-CalDAV/ical-client.xml \
-CalDAV/propfind.xml \
-CalDAV/put.xml \
-CalDAV/reports.xml \
-CardDAV/ab-client.xml \
-CardDAV/errors.xml \
-CardDAV/get.xml \
-CardDAV/propfind.xml \
-CardDAV/put.xml \
-CardDAV/reports.xml
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
+    CalDAV/caldavIOP.xml \
+    CalDAV/errors.xml \
+    CalDAV/get.xml \
+    CalDAV/ical-client.xml \
+    CalDAV/propfind.xml \
+    CalDAV/put.xml \
+    CalDAV/reports.xml \
+    CardDAV/ab-client.xml \
+    CardDAV/errors.xml \
+    CardDAV/get.xml \
+    CardDAV/propfind.xml \
+    CardDAV/put.xml \
+    CardDAV/reports.xml
 

Modified: CalDAVTester/trunk/QuickLook-CalDAV
===================================================================
--- CalDAVTester/trunk/QuickLook-CalDAV	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/QuickLook-CalDAV	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -20,7 +20,7 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
 	CalDAV/caldavIOP.xml \
 	CalDAV/errors.xml \
 	CalDAV/get.xml \

Modified: CalDAVTester/trunk/QuickLook-CardDAV
===================================================================
--- CalDAVTester/trunk/QuickLook-CardDAV	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/QuickLook-CardDAV	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -20,7 +20,7 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml \
 	CardDAV/ab-client.xml \
 	CardDAV/errors.xml \
 	CardDAV/get.xml \

Modified: CalDAVTester/trunk/README.txt
===================================================================
--- CalDAVTester/trunk/README.txt	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/README.txt	2012-09-06 15:21:24 UTC (rev 9782)
@@ -12,7 +12,7 @@
 
 COMMAND LINE OPTIONS
 
-testcaldav.py [-s filename] [-p filename] [-d] [--all] [--random] \
+testcaldav.py [-s filename] [-p filename] [-d] [--ssl] [--all] [--random] \
 	file1 file2 ...
 
 	-s : filename specifies the file to use for server information
@@ -25,6 +25,8 @@
 	-d : in conjunction with -p, if present specifies that the populated
 	data be removed after all tests have completed.
 
+	--ssl : run tests using SSL/https connections to the server.
+
 	--all : execute all tests found in the working directory. Each .xml
 	file in that directory is examined and those corresponding to the
 	caldavtest.dtd are executed.
@@ -58,15 +60,15 @@
 	ELEMENT <host>
 		host name for server to test.
 
-	ELEMENT <port>
-		port to use to connect to server.
+	ELEMENT <nonsslport>
+		port to use to connect to server (non-SSL).
 
+	ELEMENT <sslport>
+		port to use to connect to server (SSL).
+
 	ELEMENT <authtype>
 		HTTP authentication method to use.
 
-	ELEMENT <ssl>
-		if present, use SSL to connect to the server.
-
 	ELEMENT <features>
 		list of features for the server under test.
 

Modified: CalDAVTester/trunk/Validation-All
===================================================================
--- CalDAVTester/trunk/Validation-All	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/Validation-All	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -21,7 +21,7 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
 	--exclude CalDAV/directory.xml \
 	--exclude CalDAV/proxyauthz.xml \
 	--exclude CalDAV/quota.xml \

Modified: CalDAVTester/trunk/Validation-CalDAV
===================================================================
--- CalDAVTester/trunk/Validation-CalDAV	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/Validation-CalDAV	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -20,7 +20,7 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
 	--subdir CalDAV \
 	--exclude CalDAV/directory.xml \
 	--exclude CalDAV/proxyauthz.xml \

Modified: CalDAVTester/trunk/Validation-CardDAV
===================================================================
--- CalDAVTester/trunk/Validation-CardDAV	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/Validation-CardDAV	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 ##
-# Copyright (c) 2009 Apple Inc. All rights reserved.
+# Copyright (c) 2009-2012 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.
@@ -20,7 +20,7 @@
 #
 
 export PYTHONPATH=/usr/share/caldavd/lib/python:/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/
-./testcaldav.py --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
+./testcaldav.py $@ --print-details-onfail -s scripts/server/serverinfo-caldav.xml --all \
 	--subdir CardDAV \
 	--exclude CardDAV/directory.xml \
  	

Modified: CalDAVTester/trunk/odsetup.py
===================================================================
--- CalDAVTester/trunk/odsetup.py	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/odsetup.py	2012-09-06 15:21:24 UTC (rev 9782)
@@ -250,7 +250,7 @@
     if veryverbose:
         print "-----"
     if verbose:
-        print args
+        print args.replace(diradmin_pswd, "xxxx")
     if input:
         p = Popen(args, stdin=PIPE, stdout=PIPE, stderr=PIPE, shell=True)
         result = p.communicate(input)
@@ -302,7 +302,7 @@
     sudoers = plist["SudoersFile"]
     sudoers = os.path.join(configroot, sudoers) if sudoers and sudoers[0] not in ('/', '.',) else sudoers
 
-    port = plist["HTTPPort"]
+    nonsslport = plist["HTTPPort"]
     sslport = plist["SSLPort"]
 
     try:
@@ -327,7 +327,7 @@
     if sudoers[0] != "/":
         sudoers = base_dir + sudoers
 
-    return hostname, port, sslport, authtype, docroot, sudoers
+    return hostname, nonsslport, sslport, authtype, docroot, sudoers
 
 def patchConfig(config, admin):
     """
@@ -397,7 +397,7 @@
         users.append({"username":"superuser", "password": "superuser"})
         writePlist(plist, sudoers)
 
-def buildServerinfo(serverinfo_default, hostname, port, sslport, authtype, docroot):
+def buildServerinfo(serverinfo_default, hostname, nonsslport, sslport, authtype, docroot):
     
     # Read in the serverinfo-template.xml file
     fd = open(serverinfo_template, "r")
@@ -436,7 +436,7 @@
 
     data = data % {
         "hostname"       : hostname,
-        "port"           : str(port),
+        "nonsslport"     : str(nonsslport),
         "sslport"        : str(sslport),
         "authtype"       : authtype,
         "overrides"      : subs_str,
@@ -718,7 +718,7 @@
             serverinfo_default = details[protocol]["serverinfo"]
             
         if not diradmin_pswd:
-            diradmin_pswd = getpass("Password: ")
+            diradmin_pswd = getpass("Directory Admin Password: ")
 
         # Process arguments
         if len(args) == 0:

Modified: CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml	2012-09-06 15:21:24 UTC (rev 9782)
@@ -20,7 +20,8 @@
 
 <serverinfo>
 	<host>localhost</host>
-	<port>8008</port>
+	<nonsslport>8008</nonsslport>
+	<sslport>8443</sslport>
 	<authtype>basic</authtype>
 
 	<features>
@@ -129,14 +130,8 @@
 		</substitution>
 
 		<!-- Server configuration settings -->
-		<substitution>
-			<key>$host:</key>
-			<value>http://localhost:8008</value>
-		</substitution>
-		<substitution>
-			<key>$hostssl:</key>
-			<value>https://localhost:8443</value>
-		</substitution>
+		<!-- $host: and $hostssl: are implicitly added by CalDAVTester based
+		     on the host/nonsslport/sslport values and ssl command line switch -->
 
 		<!-- relative path to caldav root-->
 		<substitution>
@@ -405,6 +400,16 @@
 				<key>$username-encoded%d:</key>
 				<value>User%%20%02d</value>
 			</substitution>
+			<!-- first name -->
+			<substitution>
+				<key>$firstname%d:</key>
+				<value>User</value>
+			</substitution>
+			<!-- last name -->
+			<substitution>
+				<key>$lastname%d:</key>
+				<value>%02d</value>
+			</substitution>
 			<!-- password -->
 			<substitution>
 				<key>$pswd%d:</key>

Modified: CalDAVTester/trunk/scripts/server/serverinfo-template.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo-template.xml	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/scripts/server/serverinfo-template.xml	2012-09-06 15:21:24 UTC (rev 9782)
@@ -20,7 +20,8 @@
 
 <serverinfo>
 	<host>%(hostname)s</host>
-	<port>%(port)s</port>
+	<nonsslport>%(nonsslport)s</nonsslport>
+	<sslport>%(sslport)s</sslport>
 	<authtype>%(authtype)s</authtype>
 
 	<features>
@@ -129,14 +130,8 @@
 		</substitution>
 
 		<!-- Server configuration settings -->
-		<substitution>
-			<key>$host:</key>
-			<value>http://%(hostname)s:%(port)s</value>
-		</substitution>
-		<substitution>
-			<key>$hostssl:</key>
-			<value>http://%(hostname)s:%(port)s</value>
-		</substitution>
+		<!-- $host: and $hostssl: are implicitly added by CalDAVTester based
+		     on the host/nonsslport/sslport values and ssl command line switch -->
 
 		<!-- relative path to caldav root-->
 		<substitution>

Modified: CalDAVTester/trunk/scripts/server/serverinfo.dtd
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo.dtd	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/scripts/server/serverinfo.dtd	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006-2009 Apple Inc. All rights reserved.
+ Copyright (c) 2006-2012 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.
@@ -14,12 +14,12 @@
  limitations under the License.
  -->
 
-<!ELEMENT serverinfo (host, port, authtype?, ssl?, features?, substitutions)? >
+<!ELEMENT serverinfo (host, nonsslport, sslport, authtype?, features?, substitutions)? >
 
 	<!ELEMENT host			(#PCDATA)>
-	<!ELEMENT port			(#PCDATA)>
+	<!ELEMENT nonsslport	(#PCDATA)>
+	<!ELEMENT sslport		(#PCDATA)>
 	<!ELEMENT authtype		(#PCDATA)>
-	<!ELEMENT ssl			EMPTY>
 	<!ELEMENT features      (feature*)>
 		<!ELEMENT feature   (#PCDATA)>
 	<!ELEMENT substitutions	(substitution|repeat)*>

Modified: CalDAVTester/trunk/scripts/server/serverinfo.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo.xml	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/scripts/server/serverinfo.xml	2012-09-06 15:21:24 UTC (rev 9782)
@@ -20,8 +20,9 @@
 
 <serverinfo>
 	<host>localhost</host>
-	<port>8008</port>
-	<authtype>basic</authtype>
+	<nonsslport>8008</nonsslport>
+	<sslport>8443</sslport>
+	<authtype>digest</authtype>
 
 	<features>
 		<!--  Generic WebDAV extensions -->
@@ -129,14 +130,8 @@
 		</substitution>
 
 		<!-- Server configuration settings -->
-		<substitution>
-			<key>$host:</key>
-			<value>http://localhost:8008</value>
-		</substitution>
-		<substitution>
-			<key>$hostssl:</key>
-			<value>https://localhost:8443</value>
-		</substitution>
+		<!-- $host: and $hostssl: are implicitly added by CalDAVTester based
+		     on the host/nonsslport/sslport values and ssl command line switch -->
 
 		<!-- relative path to caldav root-->
 		<substitution>

Deleted: CalDAVTester/trunk/scripts/server/sslserverinfo.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/sslserverinfo.xml	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/scripts/server/sslserverinfo.xml	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,781 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-
-<!DOCTYPE serverinfo SYSTEM "serverinfo.dtd">
-
-<!--
- Copyright (c) 2006-2012 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.
- -->
-
-<serverinfo>
-	<host>localhost</host>
-	<port>8443</port>
-	<authtype>basic</authtype>
-	<ssl/>
-
-	<features>
-		<!--  Generic WebDAV extensions -->
-		<feature>COPY Method</feature>							<!-- COPY method -->
-		<feature>MOVE Method</feature>							<!-- MOVE method -->
-		<feature>Extended MKCOL</feature>						<!-- Extended MKCOL -->
-		
-		<!-- ACL related -->
-		<feature>ACL Method</feature>							<!-- ACL method -->
-		<feature>acl-principal-prop-set REPORT</feature>		<!-- ACL acl-principal-prop-set REPORT -->
-		<feature>principal-match REPORT</feature>				<!-- ACL principal-match REPORT -->
-		<feature>principal-property-search REPORT</feature>		<!-- ACL principal-property-search REPORT -->
-		<feature>principal-search-property-set REPORT</feature>	<!-- ACL principal-search-property-set REPORT -->
-
-		<feature>add-member</feature>					<!-- Add-member used to create resources -->
-		<feature>brief</feature>					    <!-- Brief header for PROPFIND, REPORT -->
-		<feature>bulk-post</feature>					<!-- Bulk POST requests -->
-		<feature>ctag</feature>							<!-- ctag extension -->
-		<feature>current-user-principal</feature>		<!-- current-user-principal extension -->
-		<feature>directory listing</feature> 			<!-- GET on collection -->
-		<feature>extended-principal-search</feature>	<!-- Extended principal-property-search REPORT extension -->
-		<feature>expand-property</feature>				<!-- Expand property REPORT -->
-		<feature>only-proxy-groups</feature>			<!-- Group-membership only includes delegated-to groups -->
-		<feature>limits</feature>						<!-- max-collections and max-resources limits -->
-		<feature>prefer</feature>						<!-- Prefer header overall support -->
-		<feature>prefer-minimal</feature>				<!-- Prefer header return-minimal -->
-		<feature>prefer-representation</feature>		<!-- Prefer header return-representation -->
-		<feature>prefer-noroot</feature>				<!-- Prefer header depth-noroot -->
-		<feature>quota</feature>						<!-- WebDAV QUOTA -->
-		<!-- <feature>quota-on-resources</feature> -->	<!-- WebDAV QUOTA on calendar and address book object resources -->
-		<feature>resource-id</feature>					<!-- WebDAV BIND DAV:resource-id property -->
-		<feature>sync-report</feature>					<!-- WebDAV collection sync REPORT -->
-		<feature>sync-report-home</feature>				<!-- WebDAV collection sync REPORT on Homes -->
-		<feature>well-known</feature>					<!-- well-known feature -->
-
-		<!-- <feature>per-object-ACLs</feature> -->		<!-- ACL for objects in calendar/address books -->
-		<!-- <feature>regular-collection</feature> -->  <!-- Regular collections allowed in calendar/address book homes -->
-
-		<!-- CalDAV specific extension -->
-		<feature>caldav</feature>					    <!-- Basic CalDAV feature enabler -->
-		<feature>auto-accept</feature>					<!-- Auto-accept for rooms & locations -->
-		<feature>auto-accept-modes</feature>			<!-- Auto-accept modes -->
-		<feature>dropbox</feature>						<!-- dropbox extension -->
-		<feature>default-alarms</feature>				<!-- default alarms extension -->
-		<feature>EMAIL parameter</feature>				<!-- Server normalizes cuaddress and adds EMAIL parameter -->
-		<feature>extended-freebusy</feature>	      	<!-- Extended freebusy response -->
-		<feature>implicit-scheduling</feature>			<!-- CalDAV scheduling - implicit -->
-		<feature>maskuid</feature>						<!-- maskuid extension -->
-		<!-- <feature>partitioning</feature> -->		<!-- Partitioned server -->
-		<feature>private-comments</feature>				<!-- private-comments extension -->
-		<feature>private-events</feature>				<!-- private-events extension -->
-		<feature>proxy</feature>						<!-- calendar-user-proxy extension -->
-		<!-- <feature>proxy-authz</feature> -->			<!-- sudo user extension -->
-		<feature>remove-duplicate-alarms</feature>   	<!-- Server removes any duplicate alarms on PUT -->
-		<feature>query-extended</feature>				<!-- calendar-query-extended extension -->
-		<feature>shared-calendars</feature>				<!-- Shared calendars extension -->
-		<feature>schedule-changes</feature>				<!-- schedule-changes property extension -->
-		<feature>split-calendars</feature>				<!-- Calendars are split by component type -->
-		<feature>supported-component-sets</feature>		<!-- CALDAV:supported-calendar-component-sets on calendar homes -->
-		<feature>supported-component-sets-one</feature>	<!-- Only single component calendars allowed to be created -->
-		<feature>timerange-low-limit</feature>			<!-- Time-range only valid one year back -->
-		<feature>timerange-high-limit</feature>			<!-- Time-range only valid 5 years ahead -->
-		<feature>timezone-service</feature>				<!-- Timezone service extension -->
-		<feature>vavailability</feature>				<!-- VAVAILABILITY on inbox -->
-		<feature>webcal</feature>						<!-- Internet calendar subscription via GET on calendar collection -->
-
-		<!-- CardDAV specific extension -->
-		<feature>carddav</feature> 						<!-- Basic CardDAV feature enabler -->
-		<feature>default-addressbook</feature> 			<!-- Default address book behavior -->
-		<!-- <feature>global-addressbook</feature> --> 	<!-- Global address book for each user -->
-		<feature>shared-addressbooks</feature>			<!-- Shared address books extension -->
-		<!-- <feature>directory-gateway</feature> -->	<!-- Directory gateway extension -->
-
-	</features>
-
-	<substitutions>
-		<!-- Useful xpath shortcuts for verifiers -->
-		<substitution>
-			<key>$multistatus-href-prefix:</key>
-			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}href</value>
-		</substitution>
-		<substitution>
-			<key>$verify-property-prefix:</key>
-			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}propstat/{DAV:}prop</value>
-		</substitution>
-		<substitution>
-			<key>$verify-bad-response:</key>
-			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}status</value>
-		</substitution>
-		<substitution>
-			<key>$verify-error-response:</key>
-			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}error</value>
-		</substitution>
-		<substitution>
-			<key>$CALDAV:</key>
-			<value>urn:ietf:params:xml:ns:caldav</value>
-		</substitution>
-		<substitution>
-			<key>$CARDDAV:</key>
-			<value>urn:ietf:params:xml:ns:carddav</value>
-		</substitution>
-		<substitution>
-			<key>$CS:</key>
-			<value>http://calendarserver.org/ns/</value>
-		</substitution>
-
-		<!-- Server configuration settings -->
-		<substitution>
-			<key>$host:</key>
-			<value>https://localhost:8443</value>
-		</substitution>
-		<substitution>
-			<key>$hostssl:</key>
-			<value>https://localhost:8443</value>
-		</substitution>
-
-		<!-- relative path to caldav root-->
-		<substitution>
-			<key>$root:</key>
-			<value>/</value>
-		</substitution>
-
-		<!-- relative path to main principal collection-->
-		<substitution>
-			<key>$principalcollection:</key>
-			<value>$root:principals/</value>
-		</substitution>
-
-		<!-- the core recored type collections-->
-		<substitution>
-			<key>$uidstype:</key>
-			<value>__uids__</value>
-		</substitution>
-		<substitution>
-			<key>$userstype:</key>
-			<value>users</value>
-		</substitution>
-		<substitution>
-			<key>$groupstype:</key>
-			<value>groups</value>
-		</substitution>
-		<substitution>
-			<key>$locationstype:</key>
-			<value>locations</value>
-		</substitution>
-		<substitution>
-			<key>$resourcestype:</key>
-			<value>resources</value>
-		</substitution>
-
-		<!-- relative path to record type principal collections-->
-		<substitution>
-			<key>$principals_uids:</key>
-			<value>$principalcollection:$uidstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$principals_users:</key>
-			<value>$principalcollection:$userstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$principals_groups:</key>
-			<value>$principalcollection:$groupstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$principals_resources:</key>
-			<value>$principalcollection:$resourcestype:/</value>
-		</substitution>
-		<substitution>
-			<key>$principals_locations:</key>
-			<value>$principalcollection:$locationstype:/</value>
-		</substitution>
-
-		<!-- relative path to calendars collection-->
-		<substitution>
-			<key>$calendars:</key>
-			<value>$root:calendars/</value>
-		</substitution>
-
-		<!-- relative path to record type calendar collections-->
-		<substitution>
-			<key>$calendars_uids:</key>
-			<value>$calendars:$uidstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$calendars_users:</key>
-			<value>$calendars:$userstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$calendars_groups:</key>
-			<value>$calendars:$groupstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$calendars_resources:</key>
-			<value>$calendars:$resourcestype:/</value>
-		</substitution>
-		<substitution>
-			<key>$calendars_locations:</key>
-			<value>$calendars:$locationstype:/</value>
-		</substitution>
-
-		<!-- primary calendar name-->
-		<substitution>
-			<key>$calendar:</key>
-			<value>calendar</value>
-		</substitution>
-
-		<!-- primary tasks-only calendar name-->
-		<substitution>
-			<key>$tasks:</key>
-			<value>tasks</value>
-		</substitution>
-
-		<!-- inbox name-->
-		<substitution>
-			<key>$inbox:</key>
-			<value>inbox</value>
-		</substitution>
-
-		<!-- outbox name-->
-		<substitution>
-			<key>$outbox:</key>
-			<value>outbox</value>
-		</substitution>
-
-		<!-- dropbox name-->
-		<substitution>
-			<key>$dropbox:</key>
-			<value>dropbox</value>
-		</substitution>
-
-		<!-- notification name-->
-		<substitution>
-			<key>$notification:</key>
-			<value>notification</value>
-		</substitution>
-
-		<!-- freebusy name-->
-		<substitution>
-			<key>$freebusy:</key>
-			<value>freebusy</value>
-		</substitution>
-
-		<!-- server-to-server inbox-->
-		<substitution>
-			<key>$servertoserver:</key>
-			<value>$root:inbox</value>
-		</substitution>
-
-		<!-- timezone service-->
-		<substitution>
-			<key>$timezoneservice:</key>
-			<value>$root:timezones</value>
-		</substitution>
-
-		<!-- relative path to calendars collection-->
-		<substitution>
-			<key>$addressbooks:</key>
-			<value>$root:addressbooks/</value>
-		</substitution>
-
-		<!-- relative path to record type calendar collections-->
-		<substitution>
-			<key>$addressbooks_uids:</key>
-			<value>$addressbooks:$uidstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$addressbooks_users:</key>
-			<value>$addressbooks:$userstype:/</value>
-		</substitution>
-		<substitution>
-			<key>$addressbooks_groups:</key>
-			<value>$addressbooks:$groupstype:/</value>
-		</substitution>
-
-		<!-- primary addressbook name -->
-		<substitution>
-			<key>$addressbook:</key>
-			<value>addressbook</value>
-		</substitution>
-
-		<!-- directory name -->
-		<substitution>
-			<key>$directory:</key>
-			<value>$root:directory/</value>
-		</substitution>
-
-		<!-- global-addressbook name -->
-		<substitution>
-			<key>$global_addressbook:</key>
-			<value>global-addressbook</value>
-		</substitution>
-
-		<!-- POST add-member URI suffix -->
-		<substitution>
-			<key>$add-member:</key>
-			<value>;add-member</value>
-		</substitution>
-
-		<!-- user id for admin user -->
-		<substitution>
-			<key>$useradmin:</key>
-			<value>admin</value>
-		</substitution>
-		<!-- guid for admin user -->
-		<substitution>
-			<key>$useradminguid:</key>
-			<value>admin</value>
-		</substitution>
-		<!-- password for admin user -->
-		<substitution>
-			<key>$pswdadmin:</key>
-			<value>admin</value>
-		</substitution>
-
-		<!-- relative path to admin principal resource-->
-		<substitution>
-			<key>$principal_admin:</key>
-			<value>$principals_users:$useradmin:/</value>
-		</substitution>
-		<substitution>
-			<key>$principaluri_admin:</key>
-			<value>$principals_uids:$useradminguid:/</value>
-		</substitution>
-
-		<!-- user id for apprentice user -->
-		<substitution>
-			<key>$userapprentice:</key>
-			<value>apprentice</value>
-		</substitution>
-		<!-- guid for apprentice user -->
-		<substitution>
-			<key>$userapprenticeguid:</key>
-			<value>apprentice</value>
-		</substitution>
-		<!-- password for admin user -->
-		<substitution>
-			<key>$pswdapprentice:</key>
-			<value>apprentice</value>
-		</substitution>
-
-		<!-- relative path to apprentice principal resource-->
-		<substitution>
-			<key>$principal_apprentice:</key>
-			<value>$principals_users:$userapprentice:/</value>
-		</substitution>
-		<substitution>
-			<key>$principaluri_apprentice:</key>
-			<value>$principals_uids:$userapprenticeguid:/</value>
-		</substitution>
-
-		<!-- user id for proxy user -->
-		<substitution>
-			<key>$userproxy:</key>
-			<value>superuser</value>
-		</substitution>
-		<!-- password for proxy user -->
-		<substitution>
-			<key>$pswdproxy:</key>
-			<value>superuser</value>
-		</substitution>
-
-		<!--  Forty user accounts -->
-		<repeat count="40">
-			<!-- user id -->
-			<substitution>
-				<key>$userid%d:</key>
-				<value>user%02d</value>
-			</substitution>
-			<!-- user guid -->
-			<substitution>
-				<key>$userguid%d:</key>
-				<value>user%02d</value>
-			</substitution>
-			<!-- user name -->
-			<substitution>
-				<key>$username%d:</key>
-				<value>User %02d</value>
-			</substitution>
-			<!-- user name URI encoded -->
-			<substitution>
-				<key>$username-encoded%d:</key>
-				<value>User%%20%02d</value>
-			</substitution>
-			<!-- password -->
-			<substitution>
-				<key>$pswd%d:</key>
-				<value>user%02d</value>
-			</substitution>
-			<!-- relative path to user principal resource-->
-			<substitution>
-				<key>$principal%d:</key>
-				<value>$principals_users:$userid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$principaluri%d:</key>
-				<value>$principals_uids:$userguid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$principal%dnoslash:</key>
-				<value>$principals_users:$userid%d:</value>
-			</substitution>
-
-			<!-- relative path to user calendar home-->
-			<substitution>
-				<key>$calendarhome%d:</key>
-				<value>$calendarhome%d:</value>
-			</substitution>
-			<!-- relative path to user alternate calendar home-->
-			<substitution>
-				<key>$calendarhomealt%d:</key>
-				<value>$calendars_users:$userid%d:</value>
-			</substitution>
-			<!-- relative path to user calendar-->
-			<substitution>
-				<key>$calendarpath%d:</key>
-				<value>$calendarhome%d:/$calendar:</value>
-			</substitution>
-			<!-- relative path to user alternate calendar-->
-			<substitution>
-				<key>$calendarpathalt%d:</key>
-				<value>$calendarhomealt%d:/$calendar:</value>
-			</substitution>
-			<!-- relative path to user tasks calendar-->
-			<substitution>
-				<key>$taskspath%d:</key>
-				<value>$calendarhome%d:/$tasks:</value>
-			</substitution>
-			<!-- relative path to user inbox-->
-			<substitution>
-				<key>$inboxpath%d:</key>
-				<value>$calendarhome%d:/$inbox:</value>
-			</substitution>
-			<!-- relative path to user outbox-->
-			<substitution>
-				<key>$outboxpath%d:</key>
-				<value>$calendarhome%d:/$outbox:</value>
-			</substitution>
-			<!-- relative path to user dropbox-->
-			<substitution>
-				<key>$dropboxpath%d:</key>
-				<value>$calendarhome%d:/$dropbox:</value>
-			</substitution>
-			<!-- relative path to user notification-->
-			<substitution>
-				<key>$notificationpath%d:</key>
-				<value>$calendarhome%d:/$notification:</value>
-			</substitution>
-			<!-- relative path to user freebusy-->
-			<substitution>
-				<key>$freebusypath%d:</key>
-				<value>$calendarhome%d:/$freebusy:</value>
-			</substitution>
-			<substitution>
-				<key>$email%d:</key>
-				<value>$userid%d:@example.com</value>
-			</substitution>
-			<!-- calendar user address of user-->
-			<substitution>
-				<key>$cuaddr%d:</key>
-				<value>mailto:$email%d:</value>
-			</substitution>
-			<substitution>
-				<key>$cuaddralt%d:</key>
-				<value>$principaluri%d:</value>
-			</substitution>
-			<substitution>
-				<key>$cuaddraltnoslash%d:</key>
-				<value>$principals_uids:$userguid%d:</value>
-			</substitution>
-			<substitution>
-				<key>$cuaddrurn%d:</key>
-				<value>urn:uuid:$userguid%d:</value>
-			</substitution>
-
-			<!-- relative path to user addressbook home-->
-			<substitution>
-				<key>$addressbookhome%d:</key>
-				<value>$addressbooks_uids:$userguid%d:</value>
-			</substitution>
-			<!-- relative path to user addressbook-->
-			<substitution>
-				<key>$addressbookpath%d:</key>
-				<value>$addressbooks_uids:$userguid%d:/$addressbook:</value>
-			</substitution>
-		</repeat>
-
-		<!--  Ten public accounts -->
-		<repeat count="10">
-			<!-- user id -->
-			<substitution>
-				<key>$publicuserid%d:</key>
-				<value>public%02d</value>
-			</substitution>
-			<!-- user guid -->
-			<substitution>
-				<key>$publicuserguid%d:</key>
-				<value>public%02d</value>
-			</substitution>
-			<!-- user name -->
-			<substitution>
-				<key>$publicusername%d:</key>
-				<value>Public %02d</value>
-			</substitution>
-			<!-- password -->
-			<substitution>
-				<key>$publicpswd%d:</key>
-				<value>public%02d</value>
-			</substitution>
-			<!-- relative path to user principal resource-->
-			<substitution>
-				<key>$publicprincipal%d:</key>
-				<value>$principals_users:$publicuserid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$publicprincipaluri%d:</key>
-				<value>$principals_uids:$publicuserguid%d:/</value>
-			</substitution>
-			<!-- relative path to user calendar home-->
-			<substitution>
-				<key>$publiccalendarhome%d:</key>
-				<value>$calendars_uids:$publicuserguid%d:</value>
-			</substitution>
-			<!-- relative path to user calendar-->
-			<substitution>
-				<key>$publiccalendarpath%d:</key>
-				<value>$calendars_uids:$publicuserguid%d:/$calendar:</value>
-			</substitution>
-			<substitution>
-				<key>$publicemail%d:</key>
-				<value>$publicuserid%d:@example.com</value>
-			</substitution>
-			<!-- calendar user address of user-->
-			<substitution>
-				<key>$publiccuaddr%d:</key>
-				<value>mailto:$publicemail%d:</value>
-			</substitution>
-			<substitution>
-				<key>$publiccuaddralt%d:</key>
-				<value>$publicprincipaluri%d:</value>
-			</substitution>
-			<substitution>
-				<key>$publiccuaddrurn%d:</key>
-				<value>urn:uuid:$publicuserguid%d:</value>
-			</substitution>
-		</repeat>
-
-		<!--  Ten resource accounts -->
-		<repeat count="10">
-			<substitution>
-				<key>$resourceid%d:</key>
-				<value>resource%02d</value>
-			</substitution>
-			<!-- resource guid-->
-			<substitution>
-				<key>$resourceguid%d:</key>
-				<value>resource%02d</value>
-			</substitution>
-			<!-- resource name-->
-			<substitution>
-				<key>$resourcename%d:</key>
-				<value>Resource %02d</value>
-			</substitution>
-			<!-- relative path to first resource calendar home-->
-			<substitution>
-				<key>$rcalendarhome%d:</key>
-				<value>$calendars_uids:$resourceguid%d:</value>
-			</substitution>
-			<!-- relative path to first resource calendar home-->
-			<substitution>
-				<key>$rcalendarpath%d:</key>
-				<value>$calendars_uids:$resourceguid%d:/$calendar:</value>
-			</substitution>
-			<!-- relative path to first resource inbox-->
-			<substitution>
-				<key>$rinboxpath%d:</key>
-				<value>$calendars_uids:$resourceguid%d:/$inbox:</value>
-			</substitution>
-			<!-- relative path to first resource outbox-->
-			<substitution>
-				<key>$routboxpath%d:</key>
-				<value>$calendars_uids:$resourceguid%d:/$outbox:</value>
-			</substitution>
-			<!-- relative path to first resource principal resource-->
-			<substitution>
-				<key>$rprincipal%d:</key>
-				<value>$principals_resources:$resourceid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$rprincipaluri%d:</key>
-				<value>$principals_uids:$resourceguid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$rcuaddralt%d:</key>
-				<value>$rprincipaluri%d:</value>
-			</substitution>
-			<substitution>
-				<key>$rcuaddrurn%d:</key>
-				<value>urn:uuid:$resourceguid%d:</value>
-			</substitution>
-		</repeat>
-
-		<!--  Ten Location accounts -->
-		<repeat count="10">
-			<substitution>
-				<key>$locationid%d:</key>
-				<value>location%02d</value>
-			</substitution>
-			<!-- location guid-->
-			<substitution>
-				<key>$locationguid%d:</key>
-				<value>location%02d</value>
-			</substitution>
-			<!-- location name-->
-			<substitution>
-				<key>$locationname%d:</key>
-				<value>Location %02d</value>
-			</substitution>
-			<!-- relative path to first location calendar home-->
-			<substitution>
-				<key>$lcalendarhome%d:</key>
-				<value>$calendars_uids:$locationguid%d:</value>
-			</substitution>
-			<!-- relative path to first location calendar home-->
-			<substitution>
-				<key>$lcalendarpath%d:</key>
-				<value>$calendars_uids:$locationguid%d:/$calendar:</value>
-			</substitution>
-			<!-- relative path to first location inbox-->
-			<substitution>
-				<key>$linboxpath%d:</key>
-				<value>$calendars_uids:$locationguid%d:/$inbox:</value>
-			</substitution>
-			<!-- relative path to first location outbox-->
-			<substitution>
-				<key>$loutboxpath%d:</key>
-				<value>$calendars_uids:$locationguid%d:/$outbox:</value>
-			</substitution>
-			<!-- relative path to first location principal resource-->
-			<substitution>
-				<key>$lprincipal%d:</key>
-				<value>$principals_resources:$locationid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$lprincipaluri%d:</key>
-				<value>$principals_uids:$locationguid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$lcuaddralt%d:</key>
-				<value>$lprincipaluri%d:</value>
-			</substitution>
-			<substitution>
-				<key>$lcuaddrurn%d:</key>
-				<value>urn:uuid:$locationguid%d:</value>
-			</substitution>
-		</repeat>
-
-
-		<!--  Ten Group accounts -->
-		<repeat count="10">
-			<substitution>
-				<key>$groupid%d:</key>
-				<value>group%02d</value>
-			</substitution>
-			<!-- group guid-->
-			<substitution>
-				<key>$groupguid%d:</key>
-				<value>group%02d</value>
-			</substitution>
-			<!-- group name-->
-			<substitution>
-				<key>$groupname%d:</key>
-				<value>Group %02d</value>
-			</substitution>
-			<!-- relative path to first group principal resource-->
-			<substitution>
-				<key>$gprincipal%d:</key>
-				<value>$principals_resources:$groupid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$gprincipaluri%d:</key>
-				<value>$principals_uids:$groupguid%d:/</value>
-			</substitution>
-			<substitution>
-				<key>$gcuaddralt%d:</key>
-				<value>$gprincipaluri%d:</value>
-			</substitution>
-			<substitution>
-				<key>$gcuaddrurn%d:</key>
-				<value>urn:uuid:$groupguid%d:</value>
-			</substitution>
-		</repeat>
-
-		<!--  User with non-ascii name -->
-		<substitution>
-			<key>$i18nid:</key>
-			<value>i18nuser</value>
-		</substitution>
-		<!-- group guid-->
-		<substitution>
-			<key>$i18nguid:</key>
-			<value>i18nuser</value>
-		</substitution>
-		<!-- group name-->
-		<substitution>
-			<key>$i18nname:</key>
-			<value>まだ</value>
-		</substitution>
-		<!-- password -->
-		<substitution>
-			<key>$i18npswd:</key>
-			<value>i18nuser</value>
-		</substitution>
-		<!-- relative path to user calendar-->
-		<substitution>
-			<key>$i18ncalendarpath:</key>
-			<value>$calendars_uids:$i18nguid:/$calendar:</value>
-		</substitution>
-		<substitution>
-			<key>$i18nemail:</key>
-			<value>$i18nid:@example.com</value>
-		</substitution>
-		<!-- CUAddrs -->
-		<substitution>
-			<key>$i18ncuaddr:</key>
-			<value>mailto:$i18nemail:</value>
-		</substitution>
-		<substitution>
-			<key>$i18ncuaddrurn:</key>
-			<value>urn:uuid:$i18nguid:</value>
-		</substitution>
-
-		<!-- relative path to disabled group principal resource-->
-		<substitution>
-			<key>$principaldisabled:</key>
-			<value>$principals_groups:disabledgroup/</value>
-		</substitution>
-		<substitution>
-			<key>$principaluridisabled:</key>
-			<value>$principals_uids:disabledgroup/</value>
-		</substitution>
-		<!-- calendar user address of disabled group-->
-		<substitution>
-			<key>$cuaddrdisabled:</key>
-			<value>$principals_uids:disabledgroup/</value>
-		</substitution>
-
-		<!--  Override some of the above definitions for special cases -->
-
-		<!-- calendar user address of second user-->
-		<substitution>
-			<key>$cuaddr2:</key>
-			<value>MAILTO:$email2:</value>
-		</substitution>
-
-	</substitutions>
-</serverinfo>

Modified: CalDAVTester/trunk/src/manager.py
===================================================================
--- CalDAVTester/trunk/src/manager.py	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/src/manager.py	2012-09-06 15:21:24 UTC (rev 9782)
@@ -1,5 +1,5 @@
 ##
-# Copyright (c) 2006-2011 Apple Inc. All rights reserved.
+# Copyright (c) 2006-2012 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.
@@ -76,7 +76,7 @@
         else:
             print str,
 
-    def readXML( self, serverfile, testfiles, all, moresubs = {} ):
+    def readXML( self, serverfile, testfiles, ssl, all, moresubs = {} ):
 
         self.log(manager.LOG_HIGH, "Reading Server Info from \"%s\"" % serverfile, after=2)
     
@@ -93,6 +93,16 @@
         if not len(serverinfo_node):
             raise EX_INVALID_CONFIG_FILE
         self.server_info.parseXML(serverinfo_node)
+        
+        # Setup ssl stuff
+        self.server_info.ssl = ssl
+        self.server_info.port = self.server_info.sslport if ssl else self.server_info.nonsslport
+        moresubs["$host:"] = "%s://%s:%d" % (
+            "https" if ssl else "http",
+            self.server_info.host,
+            self.server_info.port,
+        )
+        moresubs["$hostssl:"] = "https://%s:%d" % (self.server_info.host, self.server_info.sslport,)
         self.server_info.addsubs(moresubs)
         
         for testfile in testfiles:
@@ -124,6 +134,7 @@
         sname = "scripts/server/serverinfo.xml"
         dname = "scripts/tests"
         fnames = []
+        ssl = False
         all = False
         excludes = set()
         subdir = None
@@ -134,6 +145,7 @@
             sys.argv[1:],
             "s:mx:",
             [
+                "ssl",
                 "all",
                 "subdir=",
                 "exclude=",
@@ -153,6 +165,8 @@
                 sname = value
             elif option == "-x":
                 dname = value
+            elif option == "--ssl":
+                ssl = True
             elif option == "--all":
                 all = True
             elif option == "--subdir":
@@ -199,19 +213,13 @@
             random.seed(random_seed)
             random.shuffle(fnames)
 
-        self.readXML(sname, fnames, all)
+        self.readXML(sname, fnames, ssl, all)
             
         if self.memUsage:
             fd = open(pidfile, "r")
             s = fd.read()
             self.pid = int(s)
 
-    def runWithOptions(self, sname, fnames, moresubs, pid=0, memUsage=False, all = False):
-        self.readXML(sname, fnames, all, moresubs)
-        self.pid = pid
-        self.memUsage = memUsage
-        return self.runAll()
-
     def runAll(self):
         
         startTime = time.time()

Modified: CalDAVTester/trunk/src/request.py
===================================================================
--- CalDAVTester/trunk/src/request.py	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/src/request.py	2012-09-06 15:21:24 UTC (rev 9782)
@@ -19,10 +19,10 @@
 """
 
 from hashlib import md5, sha1
+from src.httpshandler import SmartHTTPConnection
 from src.xmlUtils import getYesNoAttributeValue
 import base64
 import datetime
-import httplib
 import re
 import src.xmlDefs
 import time
@@ -206,10 +206,7 @@
         if self.manager.digestCache.has_key(user):
             details = self.manager.digestCache[user]
         else:
-            if si.ssl:
-                http = httplib.HTTPSConnection( self.manager.server_info.host, self.manager.server_info.port )
-            else:
-                http = httplib.HTTPConnection( self.manager.server_info.host, self.manager.server_info.port )
+            http = SmartHTTPConnection( si.host, si.port, si.ssl )
             try:
                 http.request( "OPTIONS", self.getURI(si) )
             

Modified: CalDAVTester/trunk/src/serverinfo.py
===================================================================
--- CalDAVTester/trunk/src/serverinfo.py	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/src/serverinfo.py	2012-09-06 15:21:24 UTC (rev 9782)
@@ -28,9 +28,9 @@
 
     def __init__( self ):
         self.host = ""
-        self.port = 80
+        self.nonsslport = 80
+        self.sslport = 443
         self.authtype = "basic"
-        self.ssl = False
         self.features = set()
         self.user = ""
         self.pswd = ""
@@ -91,12 +91,12 @@
                     self.host = child.text.encode("utf-8")
                 except:
                     self.host = "localhost"
-            elif child.tag == src.xmlDefs.ELEMENT_PORT:
-                self.port = int( child.text )
+            elif child.tag == src.xmlDefs.ELEMENT_NONSSLPORT:
+                self.nonsslport = int( child.text )
+            elif child.tag == src.xmlDefs.ELEMENT_SSLPORT:
+                self.sslport = int( child.text )
             elif child.tag == src.xmlDefs.ELEMENT_AUTHTYPE:
                 self.authtype = child.text.encode("utf-8")
-            elif child.tag == src.xmlDefs.ELEMENT_SSL:
-                self.ssl = True
             elif child.tag == src.xmlDefs.ELEMENT_FEATURES:
                 self.parseFeatures(child)
             elif child.tag == src.xmlDefs.ELEMENT_SUBSTITUTIONS:

Modified: CalDAVTester/trunk/src/xmlDefs.py
===================================================================
--- CalDAVTester/trunk/src/xmlDefs.py	2012-09-06 01:09:11 UTC (rev 9781)
+++ CalDAVTester/trunk/src/xmlDefs.py	2012-09-06 15:21:24 UTC (rev 9782)
@@ -41,10 +41,10 @@
 ELEMENT_MAILTO = "mailto"
 ELEMENT_METHOD = "method"
 ELEMENT_NAME = "name"
+ELEMENT_NONSSLPORT = "nonsslport"
 ELEMENT_NOTIFY = "notify"
 ELEMENT_PAUSE = "pause"
 ELEMENT_PERIOD = "period"
-ELEMENT_PORT = "port"
 ELEMENT_PROPERTY = "property"
 ELEMENT_REPEAT = "repeat"
 ELEMENT_REQUEST = "request"
@@ -53,7 +53,7 @@
 ELEMENT_RURI = "ruri"
 ELEMENT_SERVERINFO = "serverinfo"
 ELEMENT_SPREAD = "spread"
-ELEMENT_SSL = "ssl"
+ELEMENT_SSLPORT = "sslport"
 ELEMENT_START = "start"
 ELEMENT_SUBJECT = "subject"
 ELEMENT_SUBSTITUTIONS = "substitutions"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120906/f6412fec/attachment-0001.html>


More information about the calendarserver-changes mailing list