From ae96b6f17c193b91c7595fac356174aa47f55ffc Mon Sep 17 00:00:00 2001
From: al_xipe <al_xipe@localhost>
Date: Wed, 15 Aug 2007 03:47:14 +0000
Subject: [PATCH] more fixes and refactoring for the backends suite. Some additional error checking in runCommand and some clean up in dsconfig.xml

---
 opendj-sdk/opends/tests/functional-tests/testcases/backends/backends.xml     |   54 
 opendj-sdk/opends/tests/functional-tests/testcases/backends/export-tasks.xml |  658 ++---
 opendj-sdk/opends/tests/functional-tests/testcases/backends/export.xml       | 3975 ++++++++++++++++++------------------
 opendj-sdk/opends/tests/functional-tests/testcases/backends/backup-tasks.xml |   80 
 opendj-sdk/opends/tests/functional-tests/shared/functions/utils.xml          |    7 
 opendj-sdk/opends/tests/functional-tests/shared/functions/dsconfig.xml       | 1607 ++++++--------
 6 files changed, 3,069 insertions(+), 3,312 deletions(-)

diff --git a/opendj-sdk/opends/tests/functional-tests/shared/functions/dsconfig.xml b/opendj-sdk/opends/tests/functional-tests/shared/functions/dsconfig.xml
index 30f54bf..1af0c5b 100755
--- a/opendj-sdk/opends/tests/functional-tests/shared/functions/dsconfig.xml
+++ b/opendj-sdk/opends/tests/functional-tests/shared/functions/dsconfig.xml
@@ -27,27 +27,24 @@
  ! -->
 
 <stax>
-  
   <function name="_dsconfigCommonArgs">
     <function-prolog>
       This function resolves common dsconfig arguments
     </function-prolog>
-    <function-no-args/>
-  
+    <function-no-args />
     <script>
-        if dsInstanceHost:
-          STAFCmdParamsList.append('-h %s' % dsInstanceHost)
-                  
-        if dsInstancePort:
-          STAFCmdParamsList.append('-p %s' % dsInstancePort)
-
-        if dsInstanceDn:
-          STAFCmdParamsList.append('-D "%s"' % dsInstanceDn)
-        
-        if dsInstancePswd:
-          STAFCmdParamsList.append('-w "%s"' % dsInstancePswd)
+      if dsInstanceHost:
+        STAFCmdParamsList.append('-h %s' % dsInstanceHost)
+      
+      if dsInstancePort:
+        STAFCmdParamsList.append('-p %s' % dsInstancePort)
+      
+      if dsInstanceDn:
+        STAFCmdParamsList.append('-D "%s"' % dsInstanceDn)
+      
+      if dsInstancePswd:
+        STAFCmdParamsList.append('-w "%s"' % dsInstancePswd)
     </script>
-              
   </function>
   
   
@@ -57,279 +54,268 @@
       This function modifies a property value using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost" type="optional" default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="objectName" type="required">
         <function-arg-description>
           Object to modify, e.g. password validator
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyType" type="required">
         <function-arg-description>
           Property type to modify, e.g. validator
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyName" type="required">
         <function-arg-description>
           Property to modify, e.g. enabled
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to modify, e.g. minimum-password-length
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeValue" type="optional" default="'none'">
         <function-arg-description>
           New attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="modifyType" type="optional" default="'set'">
         <function-arg-description>
           The modify type. Default value is set.
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
           Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
+      
       <!-- Local variables -->
       <script>
         mylocation=location
-        STAFCmdParams=''	
+        STAFCmdParams=''
         STAFCmd=''
-      
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('set-%s-prop ' % (objectName))
         STAFCmdParamsList.append('--%s-name "%s" ' % (propertyType,propertyName))
-            
+        
         if modifyType == 'reset':
             STAFCmdParamsList.append('--%s %s' % (modifyType,attributeName))
-            
-        else: 
+        else:
             STAFCmdParamsList.append('--%s "%s:%s"' % (modifyType,attributeName,attributeValue))
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
       <message>
         '%s %s' % (STAFCmd, STAFCmdParams)
       </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name'      : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
-
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
   </function>
-
-
+  
+  
   <!-- Get property value using dsconfig -->
   <function name="dsconfigGet">
     <function-prolog>
       This function get a property value using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="integer" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="objectName" type="required">
         <function-arg-description>
           Object to get, e.g. password validator. it's used to make the subcommand name get-...-prop
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyType" type="required">
         <function-arg-description>
           Property type to get, e.g. backend. it's used to make the  property type: --backend-name
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyName" type="required">
         <function-arg-description>
           Property to get, e.g. userroot
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to get, e.g. minimum-password-length
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-
+      
       <function-arg-def name="extraParams" type="optional">
         <function-arg-description>
           Optional extra parameters for specific test cases. ie -M
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-							
+      
       <function-arg-def name="expectedAttributeValue" type="optional" default="'none'">
         <function-arg-description>
           expected attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-		
+      
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
           Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
-        STAFCmdParams=''	
+        STAFCmdParams=''
         STAFCmd=''
-      
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('get-%s-prop ' % (objectName))
         STAFCmdParamsList.append('--%s-name "%s" -s' % (propertyType,propertyName))
-            
+        
         STAFCmdParamsList.append('--property "%s"' % (attributeName))
         if extraParams:
-          STAFCmdParamsList.append('%s' % extraParams)		  
+          STAFCmdParamsList.append(extraParams)
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
       
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
@@ -337,48 +323,37 @@
       <message>
         '%s %s' % (STAFCmd, STAFCmdParams)
       </message>
-           
-      <process name="'Get dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'" >
+        { 'name'      : 'Get dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult[0][1]
       </script>
-
-	  <sequence>
 	    <if expr="expectedAttributeValue == 'none'">
-           <call function="'checktestRC'">
-           { 'returncode' : STAXCode ,
-           'result'     : STAXReason,
-           'expected'   : expectedRC }
-           </call>		
-		 <else>		
-			 <call function="'checktestString'">
-               { 'expectedString'	   : expectedAttributeValue ,
-                  'returnString'	   :  STAXReason}
-	   	     </call>
-		 </else>
-		</if>
-		</sequence>  
+        <call function="'checktestRC'">
+          { 'returncode' : STAXCode,
+            'result'     : STAXReason,
+            'expected'   : expectedRC
+          }
+        </call>
+        <else>
+          <call function="'checktestString'">
+            { 'expectedString'	: expectedAttributeValue,
+              'returnString'	  :  STAXReason
+            }
+          </call>
+        </else>
+      </if>
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
   </function>
-
   
   
   <!-- generic wrapper on dsconfig -->
@@ -389,144 +364,130 @@
       This function lists, get or set a list of attributes using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost" type="optional" default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="subcommand" type="required">
         <function-arg-description>
           dsconfig subcommand to execute
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="objectType" type="optional">
         <function-arg-description>
           Object type to modify, e.g. backend-name
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="objectName" type="optional">
         <function-arg-description>
           object name  to modify, e.g. userroot
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="optionsString" type="optional">
         <function-arg-description>
           String containing  the dsconfig options.  e.g. --set enabled:true --set key-store-pin:servercert
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 					
       <function-arg-def name="expectedRC" type="optional" default="0">
-      <function-arg-description>
-        Expected return code value. Default value is 0
-      </function-arg-description>
-      <function-arg-property name="type" value="string"/>
-    </function-arg-def>			
-	
+        <function-arg-description>
+          Expected return code value. Default value is 0
+        </function-arg-description>
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
-        STAFCmdParams=''	
+        STAFCmdParams=''
         STAFCmd=''
-      
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-            
+        
         STAFCmdParamsList=[]
-        STAFCmdParamsList.append('%s' % (subcommand))
+        STAFCmdParamsList.append(subcommand)
         if objectType:
           STAFCmdParamsList.append('--%s "%s" ' % (objectType,objectName))		  
         if optionsString:
-          STAFCmdParamsList.append(' %s' % (optionsString))
+          STAFCmdParamsList.append(' %s' % optionsString)
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'execute dsconfig subcommand'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-				
+      <call function="'runCommand'">
+        { 'name'      : 'execute dsconfig subcommand',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
-				
       <call function="'checktestRC'">
-        { 'returncode' : STAXCode ,
+        { 'returncode' : STAXCode,
           'result'     : STAXReason,
-          'expected'   : expectedRC }
-      </call>		
-
+          'expected'   : expectedRC
+        }
+      </call>
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
   </function>	
 	
   <!-- Modify password policy using dsconfig -->
@@ -535,345 +496,342 @@
       This function modifies a password policy using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
 		
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="propertyName" type="required">
         <function-arg-description>
           Property to modify, e.g. enabled
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to modify, e.g. minimum-password-length
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeValue" type="optional" default="'none'">
         <function-arg-description>
           New attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="modifyType" type="optional" default="'set'">
         <function-arg-description>
           The modify type. Default value is set.
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
           Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
-    <call function="'dsconfigSet'">
-      { 'location'               : '%s' % location ,
-        'dsPath'                 : '%s' % dsPath ,
-        'dsInstanceHost'         : '%s' % dsInstanceHost ,
-        'dsInstancePort'         : '%s' % dsInstancePort ,
-        'dsInstanceDn'           : '%s' % dsInstanceDn ,
-        'dsInstancePswd'         : '%s' % dsInstancePswd ,
-        'objectName'             : 'password-policy' ,
-        'propertyType'           : 'policy' ,
-        'propertyName'           : '%s' % (propertyName) ,
-        'attributeName'          : '%s' % (attributeName) ,
-        'attributeValue'         : '%s' % (attributeValue) ,
-        'modifyType'             : '%s' % (modifyType) ,
-        'expectedRC'             : expectedRC }
-    </call>
-        
-    <call function="'checktestRC'">
-      { 'returncode' : STAXCode ,
-        'result'     : STAXReason ,
-        'expected'   : expectedRC }
-    </call>
-
-    <return>
+      <call function="'dsconfigSet'">
+        { 'location'               : location,
+          'dsPath'                 : dsPath,
+          'dsInstanceHost'         : dsInstanceHost,
+          'dsInstancePort'         : dsInstancePort,
+          'dsInstanceDn'           : dsInstanceDn,
+          'dsInstancePswd'         : dsInstancePswd,
+          'objectName'             : 'password-policy',
+          'propertyType'           : 'policy',
+          'propertyName'           : propertyName,
+          'attributeName'          : attributeName,
+          'attributeValue'         : attributeValue,
+          'modifyType'             : modifyType,
+          'expectedRC'             : expectedRC
+        }
+      </call>
+      <call function="'checktestRC'">
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
+      </call>
+      <return>
         STAXReason
-    </return>
-      
+      </return>
    </sequence>
-    
   </function>
-
+  
+  
   <!-- Modify password validator using dsconfig -->
   <function name="modifyPwdValidator">
     <function-prolog>
       This function modifies a password validator using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location" 
+                        type="optional" 
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="propertyName" type="required">
         <function-arg-description>
           Property to modify, e.g. enabled
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to modify, e.g. match-attribute
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeValue" type="optional" default="'none'">
         <function-arg-description>
           New attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="modifyType" type="optional" default="'set'">
         <function-arg-description>
           The modify type. Default value is set.
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
           Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
-    <call function="'dsconfigSet'">
-      { 'location'               : '%s' % location ,
-        'dsPath'                 : '%s' % dsPath ,
-        'dsInstanceHost'         : '%s' % dsInstanceHost ,
-        'dsInstancePort'         : '%s' % dsInstancePort ,
-        'dsInstanceDn'           : '%s' % dsInstanceDn ,
-        'dsInstancePswd'         : '%s' % dsInstancePswd ,
-        'objectName'             : 'password-validator' ,
-        'propertyType'           : 'validator' ,
-        'propertyName'           : '%s' % (propertyName) ,
-        'attributeName'          : '%s' % (attributeName) ,
-        'attributeValue'         : '%s' % (attributeValue) ,
-        'modifyType'             : '%s' % (modifyType) ,
-        'expectedRC'             : expectedRC }
-    </call>
-        
-    <call function="'checktestRC'">
-      { 'returncode' : STAXCode ,
-        'result'     : STAXReason ,
-        'expected'   : expectedRC }
-    </call>
-
-    <return>
+      <call function="'dsconfigSet'">
+        { 'location'       : location,
+          'dsPath'         : dsPath,
+          'dsInstanceHost' : dsInstanceHost,
+          'dsInstancePort' : dsInstancePort,
+          'dsInstanceDn'   : dsInstanceDn,
+          'dsInstancePswd' : dsInstancePswd,
+          'objectName'     : 'password-validator',
+          'propertyType'   : 'validator',
+          'propertyName'   : propertyName,
+          'attributeName'  : attributeName,
+          'attributeValue' : attributeValue,
+          'modifyType'     : modifyType,
+          'expectedRC'     : expectedRC
+        }
+      </call>
+      <call function="'checktestRC'">
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
+      </call>
+      <return>
         STAXReason
-    </return>
-      
+      </return>
    </sequence>
-    
   </function>
-
+  
+  
   <!-- Modify password policy using dsconfig -->
   <function name="modifyGlobal">
     <function-prolog>
       This function modifies a global attribute value using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
         </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="integer" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to modify, e.g. bind-with-dn-requires-password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeValue" type="required">
         <function-arg-description>
           New attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
-      <function-arg-description>
-	 Expected return code value. Default value is 0
-      </function-arg-description>
-      <function-arg-property name="type" value="string"/>
-    </function-arg-def>			
-	
+        <function-arg-description>
+          Expected return code value. Default value is 0
+        </function-arg-description>
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
         STAFCmdParams=''	
-        STAFCmd=''			  	
-      
+        STAFCmd=''
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-
+        
         if attributeValue:
             attributeValue=attributeValue.replace('"','QUOT')
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('set-global-configuration-prop ')
         STAFCmdParamsList.append('--set "%s:%s"' % (attributeName,attributeValue))
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name'      : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
@@ -886,370 +844,368 @@
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
   </function>
-
+  
+  
   <!-- Modify identity mapper using dsconfig -->
   <function name="modifyIdentityMapper">
     <function-prolog>
       This function modifies an identity mapper using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
         </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="integer" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="mapperName" type="required">
         <function-arg-description>
           Mapper to modify, e.g. Exact Match
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeName" type="required">
         <function-arg-description>
           Attribute to modify, e.g. match-attribute
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="attributeValue" type="required">
         <function-arg-description>
           New attribute value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="modifyType" type="optional" default="'set'">
         <function-arg-description>
           The modify type. Default value is set.
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
-      <function-arg-description>
-	 Expected return code value. Default value is 0
-      </function-arg-description>
-      <function-arg-property name="type" value="string"/>
-    </function-arg-def>			
-	
+        <function-arg-description>
+          Expected return code value. Default value is 0
+        </function-arg-description>
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
-    <call function="'dsconfigSet'">
-      { 'location'               : '%s' % location ,
-        'dsPath'                 : '%s' % dsPath ,
-        'dsInstanceHost'         : '%s' % dsInstanceHost ,
-        'dsInstancePort'         : '%s' % dsInstancePort ,
-        'dsInstanceDn'           : '%s' % dsInstanceDn ,
-        'dsInstancePswd'         : '%s' % dsInstancePswd ,
-        'objectName'             : 'identity-mapper' ,
-        'propertyType'           : 'mapper' ,
-        'propertyName'           : '%s' % (mapperName) ,
-        'attributeName'          : '%s' % (attributeName) ,
-        'attributeValue'         : '%s' % (attributeValue) ,
-        'modifyType'             : '%s' % (modifyType) ,
-        'expectedRC'             : expectedRC }
-    </call>
-            
-    <call function="'checktestRC'">
-      { 'returncode' : STAXCode ,
-        'result'     : STAXReason ,
-        'expected'   : expectedRC }
-    </call>
-    <return>
+      <call function="'dsconfigSet'">
+        { 'location'               : location,
+          'dsPath'                 : dsPath,
+          'dsInstanceHost'         : dsInstanceHost,
+          'dsInstancePort'         : dsInstancePort,
+          'dsInstanceDn'           : dsInstanceDn,
+          'dsInstancePswd'         : dsInstancePswd,
+          'objectName'             : 'identity-mapper',
+          'propertyType'           : 'mapper',
+          'propertyName'           : mapperName,
+          'attributeName'          : attributeName,
+          'attributeValue'         : attributeValue,
+          'modifyType'             : modifyType,
+          'expectedRC'             : expectedRC
+        }
+      </call>
+      <call function="'checktestRC'">
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
+      </call>
+      <return>
         STAXReason
-    </return>
-      
+      </return>
    </sequence>
-    
   </function>
-
+  
+  
   <!-- Modify password policy using dsconfig -->
   <function name="modifyGlobalAci">
     <function-prolog>
       This function modifies a global aci using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="integer" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="aciValue" type="required">
         <function-arg-description>
           New property value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="opType" type="optional" default="set">
         <function-arg-description>
           Operation type, one of set, add, and remove
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
-      <function-arg-description>
-	 Expected return code value. Default value is 0
-      </function-arg-description>
-      <function-arg-property name="type" value="string"/>
-    </function-arg-def>			
-	
+        <function-arg-description>
+          Expected return code value. Default value is 0
+        </function-arg-description>
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
-    <script>
+      <script>
         mylocation=location
-        STAFCmdParams=''	
-        STAFCmd=''			  	
-      
+        STAFCmdParams=''
+        STAFCmd=''
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-
+        
         if aciValue:
             aciValue=aciValue.replace('"','\\"')
-      
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('set-access-control-handler-prop ')
         STAFCmdParamsList.append('--%s "global-aci:%s"' % (opType,aciValue))
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath, 'JAVA_HOME=%s' % JAVA_HOME]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name' : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
-      
       <call function="'checktestRC'">
-          { 'returncode' : STAXCode ,
-            'result'     : STAXReason ,
-            'expected'   : expectedRC }
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
       </call>
-    <return>
+      <return>
         STAXReason
-    </return>
-      
+      </return>
     </sequence>
-    
   </function>
+  
+  
   <!-- Modify password policy using dsconfig -->
   <function name="modifySaslMech">
     <function-prolog>
       This function modifies a sasl  mechanism using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
       <function-arg-def name="handlerName" type="required">
         <function-arg-description>
           Handle to modify, e.g. DIGEST-MD5
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyName" type="required">
         <function-arg-description>
           Property to modify, e.g. realm
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="propertyValue" type="required">
         <function-arg-description>
           New property value
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="modifyType" type="optional" default="'set'">
         <function-arg-description>
           The modify type. Default value is set.
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
-      <function-arg-description>
-	 Expected return code value. Default value is 0
-      </function-arg-description>
-      <function-arg-property name="type" value="string"/>
-    </function-arg-def>			
-	
+        <function-arg-description>
+          Expected return code value. Default value is 0
+        </function-arg-description>
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
-    <call function="'dsconfigSet'">
-      { 'location'               : '%s' % location ,
-        'dsPath'                 : '%s' % dsPath ,
-        'dsInstanceHost'         : '%s' % dsInstanceHost ,
-        'dsInstancePort'         : '%s' % dsInstancePort ,
-        'dsInstanceDn'           : '%s' % dsInstanceDn ,
-        'dsInstancePswd'         : '%s' % dsInstancePswd ,
-        'objectName'             : 'sasl-mechanism-handler' ,
-        'propertyType'           : 'handler' ,
-        'propertyName'           : '%s' % (handlerName) ,
-        'attributeName'          : '%s' % (propertyName) ,
-        'attributeValue'         : '%s' % (propertyValue) ,
-        'modifyType'             : '%s' % (modifyType) ,
-        'expectedRC'             : expectedRC }
-    </call>
-            
-    <call function="'checktestRC'">
-      { 'returncode' : STAXCode ,
-        'result'     : STAXReason ,
-        'expected'   : expectedRC }
-    </call>
-    <return>
+      <call function="'dsconfigSet'">
+        { 'location'       : location,
+          'dsPath'         : dsPath,
+          'dsInstanceHost' : dsInstanceHost,
+          'dsInstancePort' : dsInstancePort,
+          'dsInstanceDn'   : dsInstanceDn,
+          'dsInstancePswd' : dsInstancePswd,
+          'objectName'     : 'sasl-mechanism-handler',
+          'propertyType'   : 'handler',
+          'propertyName'   : handlerName,
+          'attributeName'  : propertyName,
+          'attributeValue' : propertyValue,
+          'modifyType'     : modifyType,
+          'expectedRC'     : expectedRC
+        }
+      </call>
+      <call function="'checktestRC'">
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
+      </call>
+      <return>
         STAXReason
-    </return>
-      
+      </return>
     </sequence>
-    
   </function>
-
+  
+  
   <function name="addIndex">
     <function-prolog>
       This function eases adding JEB DB indexes
@@ -1257,11 +1213,11 @@
     <function-map-args>
       <function-arg-def name="location" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
 		
       <function-arg-def name="dsPath" 
@@ -1270,47 +1226,47 @@
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
 		
       <function-arg-def name="host" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>      
 		
       <function-arg-def name="port" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PORT">
+                        default="DIRECTORY_INSTANCE_PORT">
         <function-arg-description>
           Directory server port number
         </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
 		
       <function-arg-def name="rootDN" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_DN">
+                        default="DIRECTORY_INSTANCE_DN">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
+        <function-arg-property name="type" value="DN" />
       </function-arg-def> 
 		
       <function-arg-def name="rootPwd" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PSWD">
+                        default="DIRECTORY_INSTANCE_PSWD">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
       
       <function-arg-def name="backendID" 
-                        default="'%s' % DIRECTORY_INSTANCE_BE" 
+                        default="DIRECTORY_INSTANCE_BE" 
                         type="optional">
         <function-arg-description>
           The Back-end ID on to which to add an index
@@ -1321,7 +1277,7 @@
         <function-arg-description>
           ldap attribute on to which to add indexing
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="indexTypes" type="required">
@@ -1334,10 +1290,10 @@
           <function-arg-property-description>
             This argument can only have one of those values
           </function-arg-property-description>
-          <function-arg-property-data type="choice" value="'equality'"/>
-          <function-arg-property-data type="choice" value="'ordering'"/>
+          <function-arg-property-data type="choice" value="'equality'" />
+          <function-arg-property-data type="choice" value="'ordering'" />
           <function-arg-property-data type="choice" value="'presence'" />
-          <function-arg-property-data type="choice" value="'substring'"/>
+          <function-arg-property-data type="choice" value="'substring'" />
         </function-arg-property>
       </function-arg-def>
     </function-map-args>
@@ -1350,30 +1306,17 @@
         dsconfigCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
         dsconfigParams = 'create-je-index -h %s -p %s -D "%s" -w %s --backend-name %s --index-name %s --set index-type:%s' % (host,port,rootDN,rootPwd,backendID, indexAttribute, ' --set index-type:'.join(indexTypes))
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-            
-      <message>
-        'Running [%s %s]' % (dsconfigCmd, dsconfigParams)
-      </message>
-           
-      <process name="'dsconfig addIndex'">
-        <location>'%s' % location</location>
-        <command>'%s' % dsconfigCmd</command>
-        <parms>'%s' % dsconfigParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath, 'JAVA_HOME=%s' % JAVA_HOME]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-      <message>
-        '%s returned [%s] with [%s]' % (dsconfigCmd, RC,STAXResult)
-      </message>
+      
+      <call function="'_dsconfigCommonArgs'" />
+      <call function="'runCommand'">
+        { 'name'      : 'dsconfig addIndex',
+          'location'  : location,
+          'command'   : dsconfigCmd,
+          'arguments' : dsconfigParams
+        }
+      </call>
       <return>
-        RC, STAXResult
+        STAXResult
       </return>
     </sequence>
   </function>
@@ -1386,11 +1329,11 @@
     <function-map-args>
       <function-arg-def name="location" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
 		
       <function-arg-def name="dsPath" 
@@ -1399,47 +1342,47 @@
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
 		
       <function-arg-def name="host" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>      
 		
       <function-arg-def name="port" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PORT">
+                        default="DIRECTORY_INSTANCE_PORT">
         <function-arg-description>
           Directory server port number
         </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
 		
       <function-arg-def name="rootDN" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_DN">
+                        default="DIRECTORY_INSTANCE_DN">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
+        <function-arg-property name="type" value="DN" />
       </function-arg-def> 
 		
       <function-arg-def name="rootPwd" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PSWD">
+                        default="DIRECTORY_INSTANCE_PSWD">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
       
       <function-arg-def name="backendID" 
-                        default="'%s' % DIRECTORY_INSTANCE_BE" 
+                        default="DIRECTORY_INSTANCE_BE" 
                         type="optional">
         <function-arg-description>
           The Back-end ID on to which to add an index
@@ -1450,7 +1393,7 @@
         <function-arg-description>
           ldap attribute on to which add indexing
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="operation">
@@ -1462,9 +1405,9 @@
             This argument can only have one of the following values
           </function-arg-property-description>
           <function-arg-property-data type="choice" value="'add'" />
-          <function-arg-property-data type="choice" value="'remove'"/>
-          <function-arg-property-data type="choice" value="'reset'"/>
-          <function-arg-property-data type="choice" value="'set'"/>
+          <function-arg-property-data type="choice" value="'remove'" />
+          <function-arg-property-data type="choice" value="'reset'" />
+          <function-arg-property-data type="choice" value="'set'" />
         </function-arg-property>
       
       </function-arg-def> 
@@ -1473,13 +1416,13 @@
         <function-arg-description>
           the property to manipulate if the operation is add or set
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
       <function-arg-def name="indexPropertyValue" type="optional">
         <function-arg-description>
           the value for the provided property
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
     </function-map-args>
     <sequence>
@@ -1494,27 +1437,16 @@
           operationArguments = '%s:%s' % (indexProperty, indexPropertyValue)
         dsconfigParams = 'set-je-index-prop -h %s -p %s -D "%s" -w %s --backend-name %s --index-name %s --%s %s' % ( host, port, rootDN, rootPwd, backendID, indexAttribute, operation, operationArguments )
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-            
-      <message>
-        '%s %s' % (dsconfigCmd, dsconfigParams)
-      </message>
-           
-      <process name="'dsconfig modifyIndex'">
-        <location>'%s' % location</location>
-        <command>'%s' % dsconfigCmd</command>
-        <parms>'%s' % dsconfigParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath, 'JAVA_HOME=%s' % JAVA_HOME]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
+      <call function="'_dsconfigCommonArgs'" />
+      <call function="'runCommand'">
+        { 'name'      : 'dsconfig modifyIndex',
+          'location'  : location,
+          'command'   : dsconfigCmd,
+          'arguments' : dsconfigParams
+        }
+      </call>
       <return>
-        STAXReason
+        STAXResult
       </return>
     </sequence>
   </function>
@@ -1527,11 +1459,11 @@
     <function-map-args>
       <function-arg-def name="location" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
 		
       <function-arg-def name="dsPath" 
@@ -1540,60 +1472,59 @@
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
 		
       <function-arg-def name="host" 
                         type="optional" 
-                        default="'%s' % STAF_REMOTE_HOSTNAME">
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>      
 		
       <function-arg-def name="port" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PORT">
+                        default="DIRECTORY_INSTANCE_PORT">
         <function-arg-description>
           Directory server port number
         </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
 		
       <function-arg-def name="rootDN" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_DN">
+                        default="DIRECTORY_INSTANCE_DN">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
+        <function-arg-property name="type" value="DN" />
       </function-arg-def> 
 		
       <function-arg-def name="rootPwd" 
                         type="optional" 
-                        default="'%s' % DIRECTORY_INSTANCE_PSWD">
+                        default="DIRECTORY_INSTANCE_PSWD">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
       
       <function-arg-def name="backendID" 
-                        default="'%s' % DIRECTORY_INSTANCE_BE" 
+                        default="DIRECTORY_INSTANCE_BE" 
                         type="optional">
         <function-arg-description>
           The Back-end ID on to which to remove an index from
         </function-arg-description>
       </function-arg-def>
-					
+      
       <function-arg-def name="indexAttribute" type="required">
         <function-arg-description>
           ldap attribute on to which to remove indexing
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-			
     </function-map-args>
     <sequence>
       <!-- Local variables -->
@@ -1604,470 +1535,428 @@
         dsconfigCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
         dsconfigParams = 'delete-je-index -h %s -p %s -D "%s" -w %s --backend-name %s --index-name %s' % (host,port,rootDN,rootPwd,backendID, indexAttribute)
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-            
-      <message>
-        'Running [%s %s]' % (dsconfigCmd, dsconfigParams)
-      </message>
-           
-      <process name="'dsconfig removeIndex'">
-        <location>'%s' % location</location>
-        <command>'%s' % dsconfigCmd</command>
-        <parms>'%s' % dsconfigParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath, 'JAVA_HOME=%s' % JAVA_HOME]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-      <message>
-        '%s returned [%s] with [%s]' % (dsconfigCmd, RC,STAXResult)
-      </message>
+      <call function="'_dsconfigCommonArgs'" />
+      <call function="'runCommand'">
+        { 'name'      : 'dsconfig removeIndex',
+          'location'  : location,
+          'command'   : dsconfigCmd,
+          'arguments' : dsconfigParams
+        }
+      </call>
       <return>
-        RC, STAXResult
+        STAXResult
       </return>
     </sequence>
   </function>
-
-    
+  
+  
   <!-- Create synchronization provider using dsconfig -->
   <function name="createSyncProvider">
     <function-prolog>
       This function creates a synchronization provider using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
-      <function-arg-def name="providerName" type="optional" default="MultimasterSync">
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
+      <function-arg-def name="providerName"
+                        type="optional"
+                        default="MultimasterSync">
         <function-arg-description>
           Name for the synchronization provider
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
-      <function-arg-def name="providerType" type="optional" default="MultimasterType">
+      <function-arg-def name="providerType"
+                        type="optional"
+                        default="MultimasterType">
         <function-arg-description>
           Synchronization provider type
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
 	      Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
-        STAFCmdParams=''	
-        STAFCmd=''			  	
-      
+        STAFCmdParams=''
+        STAFCmd=''
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('create-synchronization-provider')
         STAFCmdParamsList.append('--provider-name "%s"' % providerName)
         STAFCmdParamsList.append('-t %s' % providerType)
         STAFCmdParamsList.append('--set "enabled:true"')
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name'      : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
       <call function="'checktestRC'">
-        { 'returncode' : STAXCode ,
-          'result'     : STAXReason ,
-          'expected'   : expectedRC }
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
       </call>
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
   </function>
-    
-
-
-
-
+  
+  
   <!-- Create a replication server using dsconfig -->
   <function name="createReplicationServer">
     <function-prolog>
       This function creates a replication server under a given synchronization provider using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
-      <function-arg-def name="providerName" type="optional" default="MultimasterSync">
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
+      <function-arg-def name="providerName"
+                        type="optional"
+                        default="MultimasterSync">
         <function-arg-description>
           Name for the synchronization provider
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
 			
       <function-arg-def name="replicationPort" type="required">
         <function-arg-description>
           Replication port number
         </function-arg-description>
-        <function-arg-property name="type" value="Port number"/>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-        
+      
       <function-arg-def name="replicationServerId" type="required">
         <function-arg-description>
           Replication server ID
         </function-arg-description>
-        <function-arg-property name="type" value="ID number"/>
-      </function-arg-def>        
-        
+        <function-arg-property name="type" value="ID number" />
+      </function-arg-def>
+      
       <function-arg-def name="replicationServerList" type="required">
         <function-arg-description>
           List of replication servers (as in host:replicationServerPort)
         </function-arg-description>
-        <function-arg-property name="type" value="list"/>
+        <function-arg-property name="type" value="list" />
       </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
 	      Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
-        STAFCmdParams=''	
-        STAFCmd=''			  	
-      
+        STAFCmdParams=''
+        STAFCmd=''
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('create-replication-server')
         STAFCmdParamsList.append('--provider-name "%s"' % providerName)
         STAFCmdParamsList.append('--set "replication-port:%s"' % replicationPort)
         STAFCmdParamsList.append('--set "replication-server-id:%s"' % replicationServerId)                    
-
+        
         for replServer in replicationServerList :  
           STAFCmdParamsList.append('--set "replication-server:%s"' % replServer)
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
       
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name'      : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
       <call function="'checktestRC'">
-        { 'returncode' : STAXCode ,
-          'result'     : STAXReason ,
-          'expected'   : expectedRC }
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
       </call> 
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
-  </function>     
-
-
-
+  </function>
+  
+  
   <!-- Create a multimaster domain using dsconfig -->
   <function name="createMultimasterDomain">
     <function-prolog>
       This function creates a multimaster domain under a given synchronization provider using dsconfig
     </function-prolog>
     <function-map-args>
-      <function-arg-def name="location" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      <function-arg-def name="location"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Location of target host
         </function-arg-description>
-        <function-arg-property name="type" value="hostname"/>
+        <function-arg-property name="type" value="hostname" />
       </function-arg-def>
-		
-      <function-arg-def name="dsPath" type="optional" default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
+      
+      <function-arg-def name="dsPath"
+                        type="optional"
+                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
         <function-arg-description>
           Pathname to installation root
         </function-arg-description>
-        <function-arg-property name="type" value="filepath"/>
+        <function-arg-property name="type" value="filepath" />
       </function-arg-def>
-		
-      <function-arg-def name="dsInstanceHost" type="optional" default="'%s' % STAF_REMOTE_HOSTNAME">
+      
+      <function-arg-def name="dsInstanceHost"
+                        type="optional"
+                        default="STAF_REMOTE_HOSTNAME">
         <function-arg-description>
           Directory server hostname or IP address
         </function-arg-description>
-		<function-arg-property name="type" value="hostname"/>
-      </function-arg-def>      
-		
+        <function-arg-property name="type" value="hostname" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
           Directory server port number
-        </function-arg-description>		  
-        <function-arg-property name="type" value="Port number"/>
+        </function-arg-description>
+        <function-arg-property name="type" value="Port number" />
       </function-arg-def>
-		
+      
       <function-arg-def name="dsInstanceDn" type="required">
         <function-arg-description>
           Bind DN
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
-      </function-arg-def> 
-		
+        <function-arg-property name="type" value="DN" />
+      </function-arg-def>
+      
       <function-arg-def name="dsInstancePswd" type="required">
         <function-arg-description>
           Bind password
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>          
-		
-      <function-arg-def name="providerName" type="optional" default="MultimasterSync">
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
+      
+      <function-arg-def name="providerName"
+                        type="optional"
+                        default="MultimasterSync">
         <function-arg-description>
           Name for the synchronization provider
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-
+      
       <function-arg-def name="domainName" type="required">
         <function-arg-description>
           Name for multimaster domain
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
+        <function-arg-property name="type" value="string" />
       </function-arg-def>
-        			
+      
       <function-arg-def name="replicationDn" type="required">
         <function-arg-description>
           DN of the replicated suffix
         </function-arg-description>
-        <function-arg-property name="type" value="DN"/>
+        <function-arg-property name="type" value="DN" />
       </function-arg-def>
-        
+      
       <function-arg-def name="serverId" type="required">
         <function-arg-description>
           Server ID
         </function-arg-description>
-        <function-arg-property name="type" value="ID number"/>
-      </function-arg-def>        
-        
+        <function-arg-property name="type" value="ID number" />
+      </function-arg-def>
+      
       <function-arg-def name="replicationServerList" type="required">
         <function-arg-description>
           List of replication servers (as in host:replicationServerPort)
         </function-arg-description>
-        <function-arg-property name="type" value="list"/>
+        <function-arg-property name="type" value="list" />
       </function-arg-def>
 			
       <function-arg-def name="expectedRC" type="optional" default="0">
         <function-arg-description>
 	      Expected return code value. Default value is 0
         </function-arg-description>
-        <function-arg-property name="type" value="string"/>
-      </function-arg-def>			
-	
+        <function-arg-property name="type" value="string" />
+      </function-arg-def>
     </function-map-args>
     <sequence>
-    
       <!-- Local variables -->
       <script>
         mylocation=location
         STAFCmdParams=''	
-        STAFCmd=''			  	
-      
+        STAFCmd=''
+        
         if dsPath:
           dsBinPath='%s/%s' % (dsPath,fileFolder)
           STAFCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
-
-            
+        
         STAFCmdParamsList=[]
         STAFCmdParamsList.append('create-multimaster-domain')
         STAFCmdParamsList.append('--provider-name "%s"' % providerName)
         STAFCmdParamsList.append('--domain-name "%s"' % domainName)          
         STAFCmdParamsList.append('--set "replication-dn:%s"' % replicationDn)
         STAFCmdParamsList.append('--set "server-id:%s"' % serverId)                    
-
+        
         for replServer in replicationServerList :  
           STAFCmdParamsList.append('--set "replication-server:%s"' % replServer)
       </script>
-     
-      <call function="'_dsconfigCommonArgs'"/>
-      
+      <call function="'_dsconfigCommonArgs'" />
       <script>
         STAFCmdParams=' '.join(STAFCmdParamsList)
       </script>
-      
-      <message>
-        '%s %s' % (STAFCmd, STAFCmdParams)
-      </message>
-           
-      <process name="'Modify dsconfig object'">
-        <location>'%s' % location</location>
-        <command>'%s' % STAFCmd</command>
-        <parms>'%s' % STAFCmdParams</parms>
-        <workdir>'%s' % dsBinPath</workdir>
-        <envs>
-          ['PATH=/bin:/usr/bin:%s' % dsBinPath]
-        </envs>
-        <console use="'same'"/>
-        <stderr mode="'stdout'"/>
-        <returnstdout/>
-      </process>
-
+      <call function="'runCommand'">
+        { 'name'      : 'Modify dsconfig object',
+          'location'  : location,
+          'command'   : STAFCmd,
+          'arguments' : STAFCmdParams
+        }
+      </call>
       <script>
         STAXCode=RC
         STAXReason=STAXResult
       </script>
       <call function="'checktestRC'">
-        { 'returncode' : STAXCode ,
-          'result'     : STAXReason ,
-          'expected'   : expectedRC }
+        { 'returncode' : STAXCode,
+          'result'     : STAXReason,
+          'expected'   : expectedRC
+        }
       </call>
       <return>
         STAXReason
       </return>
-      
     </sequence>
-    
-  </function>     
+  </function>
 </stax>
\ No newline at end of file
diff --git a/opendj-sdk/opends/tests/functional-tests/shared/functions/utils.xml b/opendj-sdk/opends/tests/functional-tests/shared/functions/utils.xml
index aa943d3..1529fdd 100755
--- a/opendj-sdk/opends/tests/functional-tests/shared/functions/utils.xml
+++ b/opendj-sdk/opends/tests/functional-tests/shared/functions/utils.xml
@@ -532,8 +532,11 @@
             self.start=start
             self.stop=stop
             tmp=fullname.split(":")
-            del tmp[0:2]
-            self.name=''.join(tmp)
+            if len(tmp) > 2:
+              del tmp[0:2]
+              self.name=''.join(tmp)
+            else:
+              self.name=fullname
             self.duration = 0
             if failures == 0:
               if successes == 0:
diff --git a/opendj-sdk/opends/tests/functional-tests/testcases/backends/backends.xml b/opendj-sdk/opends/tests/functional-tests/testcases/backends/backends.xml
index a092244..1b9c3e9 100644
--- a/opendj-sdk/opends/tests/functional-tests/testcases/backends/backends.xml
+++ b/opendj-sdk/opends/tests/functional-tests/testcases/backends/backends.xml
@@ -26,65 +26,25 @@
  !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
  ! -->
 <stax>
-
   <defaultcall function="main_backends"/>
-
   <function name="main_backends">
-
     <sequence>
-
       <block name="'backends'">
-      
         <sequence>
-    
           <script>
             CurrentTestPath['group']='backends'
           </script>
-      
           <call function="'testGroup_Preamble'"/>
-			
-			                
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/import.xml' % (TESTS_DIR)"/>
-          <call function="'main_import'" />
- 
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/import-tasks.xml' % (TESTS_DIR)"/>
-          <call function="'main_import-tasks'" />
-               
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backup-tasks.xml' % (TESTS_DIR)"/>
-          <call function="'main_backup-tasks'" />
-          
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backup.xml' % (TESTS_DIR)"/>
-          <call function="'main_backup'" />
-   
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/restore-tasks.xml' % (TESTS_DIR)"/>
-          <call function="'main_restore-tasks'" />
-        
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/restore.xml' % (TESTS_DIR)"/>
-          <call function="'main_restore'" />
-                
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/export-tasks.xml' % (TESTS_DIR)"/>
-          <call function="'main_export-tasks'" />
-         
-          <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/export.xml' % (TESTS_DIR)"/>
-          <call function="'main_export'" />
-					
-			          
+          <iterate var="_test" in="['import','import-tasks','backup-tasks','backup','restore-tasks','restore','export-tasks','export']" >
+            <sequence>
+              <import machine="STAF_LOCAL_HOSTNAME"
+                      file="'%s/testcases/backends/%s.xml' % (TESTS_DIR,_test)"/>
+              <call function="'main_%s' % _test" />
+            </sequence>
+          </iterate>
           <call function="'testGroup_Postamble'"/>
-        
         </sequence>
-      
       </block>
-      
     </sequence>
-
   </function>
-
 </stax>
diff --git a/opendj-sdk/opends/tests/functional-tests/testcases/backends/backup-tasks.xml b/opendj-sdk/opends/tests/functional-tests/testcases/backends/backup-tasks.xml
index f590bb7..2a1ebe9 100755
--- a/opendj-sdk/opends/tests/functional-tests/testcases/backends/backup-tasks.xml
+++ b/opendj-sdk/opends/tests/functional-tests/testcases/backends/backup-tasks.xml
@@ -25,78 +25,52 @@
  !
  !      Portions Copyright 2007 Sun Microsystems, Inc.
  ! -->
-
 <stax>
-
   <defaultcall function="main_backup-tasks"/>
-
   <function name="main_backup-tasks">
-
     <sequence>
-
       <block name="'backup-tasks'">
-      
         <sequence>
-  
           <script>
             if not CurrentTestPath.has_key('group'):
-              CurrentTestPath['group']='backends'						  
+              CurrentTestPath['group']='backends'
             CurrentTestPath['suite']=STAXCurrentBlock
           </script>
+          <call function="'testSuite_Preamble'" />
           
-          <call function="'testSuite_Preamble'"/>
-
-
           <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
+                  file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)" />
           <call function="'backend_setup'"> { 'loadBackend' : True } </call>
-
-															
-                  
-                  <testcase name="'Backend: Backup Tasks 1'">
-                  
-                  <sequence>
+          <testcase name="'Backend: Backup Tasks: Test 1'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend ExportTasks1: Backup the data in OpenDS by scheduling a task'
+              </message>
+              <call function="'backupTask'">
+                { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
+                  'dsInstancePort' : DIRECTORY_INSTANCE_PORT,
+                  'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
+                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
+                  'taskID'         : '3',
+                  'backupDir'       : '%s/backends/' % logsRemoteDataDir
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              <call function="'testCase_Postamble'" />
+            </sequence>
+          </testcase>
           
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend ExportTasks1: Backup the data in OpenDS by scheduling a task'
-                    </message>
-                    <call function="'backupTask'">
-                      { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
-                        'dsInstancePort' : DIRECTORY_INSTANCE_PORT,
-                        'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
-                        'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
-                        'taskID'         : '3',
-                        'backupDir'       : '%s/backends/' % logsRemoteDataDir
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-            
-
-
           <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backend_cleanup.xml' % (TESTS_DIR)"/>
+                  file="'%s/testcases/backends/backend_cleanup.xml' % (TESTS_DIR)"/>
           <call function="'backend_cleanup'"/>
-
-												    
           <call function="'testSuite_Postamble'"/>
-      
         </sequence>
-    
       </block>
-    
     </sequence>
-
   </function>
-
 </stax>
diff --git a/opendj-sdk/opends/tests/functional-tests/testcases/backends/export-tasks.xml b/opendj-sdk/opends/tests/functional-tests/testcases/backends/export-tasks.xml
index abc4ab1..7d75544 100644
--- a/opendj-sdk/opends/tests/functional-tests/testcases/backends/export-tasks.xml
+++ b/opendj-sdk/opends/tests/functional-tests/testcases/backends/export-tasks.xml
@@ -25,27 +25,18 @@
  !
  !      Portions Copyright 2007 Sun Microsystems, Inc.
  ! -->
-
 <stax>
-
   <defaultcall function="main_export-tasks"/>
-
   <function name="main_export-tasks">
-
     <sequence>
-
       <block name="'export-tasks'">
-      
         <sequence>
-  
           <script>
             if not CurrentTestPath.has_key('group'):
-              CurrentTestPath['group']='backends'						  
+              CurrentTestPath['group']='backends'
             CurrentTestPath['suite']=STAXCurrentBlock
           </script>
-          
-          <call function="'testSuite_Preamble'"/>
-
+          <call function="'testSuite_Preamble'" />
           <!--- Test Suite information
             #@TestSuiteName       Backend Export Tasks Tests
             #@TestSuitePurpose    Verify that the basic export task functionality is working in the Directory Server.
@@ -54,351 +45,328 @@
             #@TestGroup           Backend
             #@TestScript          export.xml
             #@TestHTMLLink        http://opends.dev.java.net/
-          -->			
-
+          -->
           <import machine="STAF_LOCAL_HOSTNAME"
             file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
           <call function="'backend_setup'"> { 'loadBackend' : True } </call>
-
-												    
-             <sequence>
+          <sequence>
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Export Tasks 1
+              #@TestID              ExportTasks1
+              #@TestPurpose         Verify an export task of a LDIF file on the default backend.
+              #@TestPreamble
+              #@TestSteps           An ldif file is created that describes the export task to be
+                                    scheduled. The task is scheduled by adding the ldif file
+                                    with the static ldapmodify.
+              #@TestPostamble
+              #@TestResult          Success if OpenDS returns 0
+            -->
+            <testcase name="'Backend: Export Tasks: Test 1'">
+              <sequence>
+                <call function="'testCase_Preamble'"/>
+                <message>
+                  'Backend ExportTasks1: Export the data in OpenDS by scheduling a task'
+                </message>
+                <call function="'exportLdifTask'">
+                  { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
+                    'dsInstancePort' : DIRECTORY_INSTANCE_PORT,
+                    'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
+                    'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
+                    'taskID'         : '1',
+                    'ldifFile'       : '%s/backends/ExportTasks1.ldif' % logsRemoteDataDir
+                  }
+                </call>
+                <call function="'checktestRC'">
+                  { 'returncode' : RC ,
+                    'result'     : STAXResult
+                  }
+                </call>
+                <call function="'testCase_Postamble'" />
+              </sequence>
+            </testcase>
             
-
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Export Tasks 1
-            #@TestID              ExportTasks1
-            #@TestPurpose         Verify an export task of a LDIF file on the default backend.
-            #@TestPreamble
-            #@TestSteps           An ldif file is created that describes the export task to be
-                                  scheduled. The task is scheduled by adding the ldif file
-                                  with the static ldapmodify.
-            #@TestPostamble
-            #@TestResult          Success if OpenDS returns 0
-          -->  
-          
-    
-                <testcase name="'Backend: Export Tasks 1'">
-    
-                  
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend ExportTasks1: Export the data in OpenDS by scheduling a task'
-                    </message>
-                    <call function="'exportLdifTask'">
-                      { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
-                        'dsInstancePort' : DIRECTORY_INSTANCE_PORT,
-                        'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
-                        'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
-                        'taskID'         : '1',
-                        'ldifFile'       : '%s/backends/ExportTasks1.ldif' % logsRemoteDataDir
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: LDIF Default
+              #@TestID              LDIF Default
+              #@TestPurpose         Verify an export task of a LDIF file on the default backend.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
             
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: LDIF Default
-            #@TestID              LDIF Default
-            #@TestPurpose         Verify an export task of a LDIF file on the default backend.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: LDIF Non Default
-            #@TestID              LDIF Non Default
-            #@TestPurpose         Verify an export task of a LDIF file on a differrent backend to the default.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Include Branch
-            #@TestID              Fractional Include Branch
-            #@TestPurpose         Verify an export task of a LDIF file specifying a branch that should be included in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Include Branches
-            #@TestID              Fractional Include Branches
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple branches that should be included in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Exclude Branch
-            #@TestID              Fractional Exclude Branch
-            #@TestPurpose         Verify an export task of a LDIF file specifying a branch that should be excluded in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Exclude Branches
-            #@TestID              Fractional Exclude Branches
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple branches that should be excluded in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Branches Mix
-            #@TestID              Fractional Branches Mix
-            #@TestPurpose         Verify an export task of a LDIF file specifying a mix of include and exclude branches.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Include Attribute
-            #@TestID              Fractional Include Attribute
-            #@TestPurpose         Verify an export task of a LDIF file specifying an attribute that should be included in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Include Attributes
-            #@TestID              Fractional Include Attributes
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple attributes that should be included in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Exclude Attribute
-            #@TestID              Fractional Exclude Attribute
-            #@TestPurpose         Verify an export task of a LDIF file specifying an attribute that should be excluded in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Exclude Attributes
-            #@TestID              Fractional Exclude Attributes
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple attribute that should be excluded in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Mix
-            #@TestID              Fractional Mix
-            #@TestPurpose         Verify an export task of a LDIF file specifying a mix of fractional attributes and branches.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Include
-            #@TestID              Filtered Include
-            #@TestPurpose         Verify an export task of a LDIF file specifying a search filter control which entries are included in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Includes
-            #@TestID              Filtered Includes
-            #@TestPurpose         Verify an export task of a LDIF file specifying a search filter control which entries are included in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Excludes
-            #@TestID              Filtered Excludes
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple search filters control which entries are excluded in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Includes
-            #@TestID              Filtered Includes
-            #@TestPurpose         Verify an export task of a LDIF file specifying multiple search filters control which entries are included in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Excludes Complex
-            #@TestID              Filtered Excludes Complex
-            #@TestPurpose         Verify an export task of a LDIF file specifying complex search filters control which entries are excluded in the export task.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Filtered Excludes Complex
-            #@TestID              Filtered Excludes Complex
-            #@TestPurpose         Verify an export task of a LDIF file specifying complex search filters control which entries are excluded in the export task.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Fractional Filtered Mix
-            #@TestID              Fractional Filtered Mix
-            #@TestPurpose         Verify an export task of a LDIF file specifying a mix of fractional and filtered.
-            #@TestPreamble
-            #@TestSteps
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Append To LDIF
-            #@TestID              Append To LDIF
-            #@TestPurpose         Verify an export task of a LDIF file specifying that the export task process should append to the existing LDIF file.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Compress LDIF
-            #@TestID              Compress LDIF
-            #@TestPurpose         Verify an export task where the LDIF file is compressed.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Encrypt LDIF
-            #@TestID              Encrypt LDIF
-            #@TestPurpose         Verify an export task where the LDIF file is encrypted.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Hash Signed LDIF
-            #@TestID              Hash Signed LDIF
-            #@TestPurpose         Verify an export task where the LDIF file is hashed/signed.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Wrap Column
-            #@TestID              Wrap Column
-            #@TestPurpose         Verify an export task of a LDIF file containing wrapped columns
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-          
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tasks Tests
-            #@TestName            Export Tasks: Error Codes
-            #@TestID              Error Codes
-            #@TestPurpose         Verify an export task fails with an error code.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-             </sequence>
-
-
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: LDIF Non Default
+              #@TestID              LDIF Non Default
+              #@TestPurpose         Verify an export task of a LDIF file on a differrent backend to the default.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Include Branch
+              #@TestID              Fractional Include Branch
+              #@TestPurpose         Verify an export task of a LDIF file specifying a branch that should be included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Include Branches
+              #@TestID              Fractional Include Branches
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple branches that should be included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Exclude Branch
+              #@TestID              Fractional Exclude Branch
+              #@TestPurpose         Verify an export task of a LDIF file specifying a branch that should be excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Exclude Branches
+              #@TestID              Fractional Exclude Branches
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple branches that should be excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Branches Mix
+              #@TestID              Fractional Branches Mix
+              #@TestPurpose         Verify an export task of a LDIF file specifying a mix of include and exclude branches.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Include Attribute
+              #@TestID              Fractional Include Attribute
+              #@TestPurpose         Verify an export task of a LDIF file specifying an attribute that should be included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Include Attributes
+              #@TestID              Fractional Include Attributes
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple attributes that should be included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Exclude Attribute
+              #@TestID              Fractional Exclude Attribute
+              #@TestPurpose         Verify an export task of a LDIF file specifying an attribute that should be excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Exclude Attributes
+              #@TestID              Fractional Exclude Attributes
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple attribute that should be excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Mix
+              #@TestID              Fractional Mix
+              #@TestPurpose         Verify an export task of a LDIF file specifying a mix of fractional attributes and branches.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Include
+              #@TestID              Filtered Include
+              #@TestPurpose         Verify an export task of a LDIF file specifying a search filter control which entries are included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Includes
+              #@TestID              Filtered Includes
+              #@TestPurpose         Verify an export task of a LDIF file specifying a search filter control which entries are included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Excludes
+              #@TestID              Filtered Excludes
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple search filters control which entries are excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Includes
+              #@TestID              Filtered Includes
+              #@TestPurpose         Verify an export task of a LDIF file specifying multiple search filters control which entries are included in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Excludes Complex
+              #@TestID              Filtered Excludes Complex
+              #@TestPurpose         Verify an export task of a LDIF file specifying complex search filters control which entries are excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Filtered Excludes Complex
+              #@TestID              Filtered Excludes Complex
+              #@TestPurpose         Verify an export task of a LDIF file specifying complex search filters control which entries are excluded in the export task.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Fractional Filtered Mix
+              #@TestID              Fractional Filtered Mix
+              #@TestPurpose         Verify an export task of a LDIF file specifying a mix of fractional and filtered.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Append To LDIF
+              #@TestID              Append To LDIF
+              #@TestPurpose         Verify an export task of a LDIF file specifying that the export task process should append to the existing LDIF file.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Compress LDIF
+              #@TestID              Compress LDIF
+              #@TestPurpose         Verify an export task where the LDIF file is compressed.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Encrypt LDIF
+              #@TestID              Encrypt LDIF
+              #@TestPurpose         Verify an export task where the LDIF file is encrypted.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Hash Signed LDIF
+              #@TestID              Hash Signed LDIF
+              #@TestPurpose         Verify an export task where the LDIF file is hashed/signed.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Wrap Column
+              #@TestID              Wrap Column
+              #@TestPurpose         Verify an export task of a LDIF file containing wrapped columns
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+            
+            <!--- Test Case information
+              #@TestMarker          Backend Export Tasks Tests
+              #@TestName            Export Tasks: Error Codes
+              #@TestID              Error Codes
+              #@TestPurpose         Verify an export task fails with an error code.
+              #@TestPreamble
+              #@TestSteps
+              #@TestPostamble
+              #@TestResult
+            -->
+          </sequence>
           <import machine="STAF_LOCAL_HOSTNAME"
             file="'%s/testcases/backends/backend_cleanup.xml' % (TESTS_DIR)"/>
           <call function="'backend_cleanup'"/>
-
-												             
           <call function="'testSuite_Postamble'"/>
-      
         </sequence>
-    
       </block>
-    
     </sequence>
-
   </function>
-
 </stax>
diff --git a/opendj-sdk/opends/tests/functional-tests/testcases/backends/export.xml b/opendj-sdk/opends/tests/functional-tests/testcases/backends/export.xml
index 5c45862..2b315dc 100644
--- a/opendj-sdk/opends/tests/functional-tests/testcases/backends/export.xml
+++ b/opendj-sdk/opends/tests/functional-tests/testcases/backends/export.xml
@@ -27,2035 +27,1998 @@
  ! -->
 
 <stax>
-
   <defaultcall function="main_export"/>
-
   <function name="main_export">
-
     <sequence>
-
       <block name="'export'">
-      
         <sequence>
-  
           <script>
             if not CurrentTestPath.has_key('group'):
-              CurrentTestPath['group']='backends'						  
+              CurrentTestPath['group']='backends'
             CurrentTestPath['suite']=STAXCurrentBlock
           </script>
-      
           <call function="'testSuite_Preamble'"/>
-                  
-         <!--- Test Suite information
-            #@TestSuiteName       Backend: Export: Export Tests
-            #@TestSuitePurpose    Verify that the export functionality is working in the Directory Server.
-            #@TestSuiteID         Backend Export Tests
-            #@TestSuiteGroup      Export
-            #@TestGroup           Backend
-            #@TestScript          export.xml
-            #@TestHTMLLink        http://opends.dev.java.net/
+          <!--- Test Suite information
+                #@TestSuiteName       Backend: Export: Export Tests
+                #@TestSuitePurpose    Verify that the export functionality is working in the Directory Server.
+                #@TestSuiteID         Backend Export Tests
+                #@TestSuiteGroup      Export
+                #@TestGroup           Backend
+                #@TestScript          export.xml
+                #@TestHTMLLink        http://opends.dev.java.net/
           -->
-
-
           <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
+                  file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
           <call function="'backend_setup'"> 
             { 'startDS' : False,
-			  'loadBackend' : True } 
-		  </call>	  
-												    
-			                
-                
-         <!-- Create a second instance to import data that was exported from the first instance -->
-         <message>
-           'Creating another instance for verifing the exports'
-         </message>
-         
-         <script>
+              'loadBackend' : True
+            }
+          </call>
+          
+          <!-- Create a second instance to import data that was exported from the first instance -->
+          <message>
+            'Creating another instance for verifing the exports'
+          </message>
+          
+          <script>
             DsInstancePort = int(DIRECTORY_INSTANCE_PORT)+1
             DsInstanceSSLPort = int(DIRECTORY_INSTANCE_SSL_PORT)+1
             DsInstanceDir = '%s/server2' % DIRECTORY_INSTANCE_DIR
-         </script>
-               
-	 <call function="'createInstance'">
-	   { 'dsHost'    : '%s' % DIRECTORY_INSTANCE_HOST,
-	     'dsDir'     : DsInstanceDir,
-             'dsPort'    : DsInstancePort,
-             'dsSslPort' : DsInstanceSSLPort,
-             'dsBindDN'  : '%s' % DIRECTORY_INSTANCE_DN,
-             'dsBindPwd' : '%s' % DIRECTORY_INSTANCE_PSWD,
-             'dsBaseDN'  : '%s' % DIRECTORY_INSTANCE_SFX }
-	  </call>
+          </script>
+          
+          <call function="'createInstance'">
+            { 'dsHost'    : '%s' % DIRECTORY_INSTANCE_HOST,
+              'dsDir'     : DsInstanceDir,
+              'dsPort'    : DsInstancePort,
+              'dsSslPort' : DsInstanceSSLPort,
+              'dsBindDN'  : '%s' % DIRECTORY_INSTANCE_DN,
+              'dsBindPwd' : '%s' % DIRECTORY_INSTANCE_PSWD,
+              'dsBaseDN'  : '%s' % DIRECTORY_INSTANCE_SFX
+            }
+          </call>
           
           <!-- Set the server backup the way it was before the backend tests -->
-          <call function="'main_quickstart'" />
-
-			          
-         
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: LDIF Default 
-            #@TestID              LDIF Default
-            #@TestPurpose         Verify an export of a LDIF file on the default backend.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-               
-                <testcase name="'Backend: Export: Export default backend'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export default backend'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_default.ldif' % logsRemoteDataDir,
-                        'backEnd'        : '%s' % DIRECTORY_INSTANCE_BE
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                         
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_default.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase> 
-                
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: LDIF Non Default
-            #@TestID              LDIF Non Default
-            #@TestPurpose         Verify an export of a LDIF file on a differrent backend to the default.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  non-default backend, and ldifFile           
-            #@TestPostamble
-            #@TestResult          Success if Success if exportLDIF, importLDIF returns 0
-          -->
-                 <testcase name="'Backend: Export: Export non-default backend'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export non-default backend'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_schema.ldif' % logsRemoteDataDir,
-                        'backEnd'        : 'schema'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_schema.ldif' % logsRemoteDataDir,
-                        'backEnd'     : 'schema',
-                        'dsPath'      : '%s/server2/%s' % (DIRECTORY_INSTANCE_DIR, OPENDSNAME)
-                      }
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-   
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Include Branch
-            #@TestID              Fractional Include Branch
-            #@TestPurpose         Verify an export of a LDIF file specifying a branch that should be included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -b option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Include Branch'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Include Branch'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_IncludeBranch.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-b "dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_IncludeBranch.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>         
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Include Branches
-            #@TestID              Fractional Include Branches
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple branches that should be included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and two -b options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Include Branches'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Include Branches'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_IncludeBranches.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-b "dc=com" -b "dc=example,dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_IncludeBranches.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Exclude Branch
-            #@TestID              Fractional Exclude Branch
-            #@TestPurpose         Verify an export of a LDIF file specifying a branch that should be excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -B option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Exclude Branch'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Exclude Branch'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_ExcludeBranch.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-B "dc=example,dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_ExcludeBranch.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'missingEntries'  :  ['uid=tmorris,ou=People,dc=example,dc=com',
-                                              'uid=kvaughan,ou=People,dc=example,dc=com'],
-                        'expectedEntries' : ['dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-  
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Exclude Branches
-            #@TestID              Fractional Exclude Branches
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple branches that should be excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and two -B options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-          
-                <testcase name="'Backend: Export: Export Fractional Exclude Branches'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Exclude Branches'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_ExcludeBranches.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-B "ou=People,dc=example,dc=com" -B "dc=example,dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                                          
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_ExcludeBranches.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'missingEntries'  :  ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com'],
-                        'expectedEntries' : ['dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                    
-                    <call function="'testCase_Postamble'"/>
-                    
-                  </sequence>
-          
-                </testcase>
-                
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Branches Mix
-            #@TestID              Fractional Branches Mix
-            #@TestPurpose         Verify an export of a LDIF file specifying a mix of include and exclude branches.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, both -b and -B options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Branches Mix'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Branches Mix'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_MixBranches.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-b "dc=com" -B "ou=People,dc=example,dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_MixBranches.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'missingEntries'  : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com'],
-                        'expectedEntries' : ['dc=com','dc=example,dc=com'],                    
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Include Attribute
-            #@TestID              Fractional Include Attribute
-            #@TestPurpose         Verify an export of a LDIF file specifying an attribute that should be included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -i option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Include Attribute'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Include Attribute'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_IncludeAttr.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-i dc'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_IncludeAttr.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['dc=com','dc=example,dc=com'],
-                        'missingEntries'  : ['ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Include Attributes
-            #@TestID              Fractional Include Attributes
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple attributes that should be included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and five -i options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Include Attributes'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Include Attributes'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_IncludeAttrs.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-i dc -i cn -i ou -i sn -i uid'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_IncludeAttrs.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                               'uid=kvaughan,ou=People,dc=example,dc=com',
-                                               'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'missingAttributes' : ['userpassword'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Exclude Attribute
-            #@TestID              Fractional Exclude Attribute
-            #@TestPurpose         Verify an export of a LDIF file specifying an attribute that should be excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -e option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Exclude Attribute'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Exclude Attribute'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_ExcludeAttr.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-e userpassword'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_ExcludeAttr.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com'],
-                        'missingAttributes' : ['userpassword'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Exclude Attributes
-            #@TestID              Fractional Exclude Attributes
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple attribute that should be excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and three -e options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Exclude Attributes'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Exclude Attributes'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_ExcludeAttrs.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-e userpassword -e mail -e roomnumber'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_ExcludeAttrs.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-     
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                               'uid=kvaughan,ou=People,dc=example,dc=com',
-                                               'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'missingAttributes' : ['userpassword','mail','roomnumber'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Mix
-            #@TestID              Fractional Mix
-            #@TestPurpose         Verify an export of a LDIF file specifying a mix of fractional attributes and branches.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and mixed -i, -b, and -B options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Mix'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Mix'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FractionalMix.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-i dc -i cn -i ou -i sn -i uid -b "dc=com" -b "dc=example,dc=com" -b "ou=People,dc=example,dc=com" -B "ou=Departed,ou=People,dc=example,dc=com"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FractionalMix.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'missingAttributes' : ['userpassword'],                     
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Include
-            #@TestID              Filtered Include
-            #@TestPurpose         Verify an export of a LDIF file specifying a search filter control which entries are included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -I option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Include'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Include'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredInclude.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-I "objectclass=*"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredInclude.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Includes
-            #@TestID              Filtered Includes
-            #@TestPurpose         Verify an export of a LDIF file specifying a search filter control which entries are included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and two -I options. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Includes'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Includes'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-I "objectclass=domain" -I "objectclass=organizationalunit"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['dc=example,dc=com', 'dc=com'],
-                        'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
-                                             'uid=dmiller,ou=People,dc=example,dc=com',
-                                             'uid=rhunt,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-                
-                <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Exclude
-            #@TestID              Filtered Exclude
-            #@TestPurpose         Verify an export of a LDIF file specifying search filter control which entries are excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, an ldifFile, and -E option. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Exclude'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Exclude'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredExclude.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-E "objectclass=person"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredExclude.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['dc=example,dc=com',
-                                             'ou=People,dc=example,dc=com'],
-                        'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
-                                             'uid=dmiller,ou=People,dc=example,dc=com',
-                                             'uid=rhunt,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Excludes
-            #@TestID              Filtered Excludes
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple search filters control which entries are excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Excludes'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Excludes'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredExcludes.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-E "objectclass=person" -E "objectclass=organizationalunit"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredExcludes.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['dc=example,dc=com',
-                                             'dc=com'],
-                        'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
-                                             'uid=dmiller,ou=People,dc=example,dc=com',
-                                             'uid=rhunt,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Includes
-            #@TestID              Filtered Includes
-            #@TestPurpose         Verify an export of a LDIF file specifying multiple search filters control which entries are included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Includes'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Includes'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-I "objectclass=domain" -I "objectclass=organizationalunit"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['dc=example,dc=com',
-                                             'ou=People,dc=example,dc=com'],
-                        'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
-                                             'uid=dmiller,ou=People,dc=example,dc=com',
-                                             'uid=rhunt,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Includes Complex
-            #@TestID              Filtered Includes Complex
-            #@TestPurpose         Verify an export of a LDIF file specifying complex search filters control which entries are included in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Includes Complex'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Includes Complex'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredComplexIncludes.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-I "|(objectclass=person)(objectclass=domain)(objectclass=organizationalunit)"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredComplexIncludes.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Filtered Excludes Complex
-            #@TestID              Filtered Excludes Complex
-            #@TestPurpose         Verify an export of a LDIF file specifying complex search filters control which entries are excluded in the export.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Filtered Excludes Complex'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Filtered Excludes Complex'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredComplexExcludes.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-E "&amp;(objectclass=person)(ou=Departed)"'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredComplexExcludes.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Fractional Filtered Mix
-            #@TestID              Fractional Filtered Mix
-            #@TestPurpose         Verify an export of a LDIF file specifying a mix of fractional and filtered.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Fractional Filtered Mix'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Fractional Filtered Mix'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-E "&amp;(objectclass=person)(ou=Departed)" -b "dc=com" -e userpassword'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Append To LDIF
-            #@TestID              Append To LDIF
-            #@TestPurpose         Verify an export of a LDIF file specifying that the export process should append to the existing LDIF file.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Append To LDIF'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Append To LDIF'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-a'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Compress LDIF
-            #@TestID              Compress LDIF
-            #@TestPurpose         Verify an export where the LDIF file is compressed.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Compress LDIF'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Compress LDIF'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/ExportCompressed.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-c'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'       : '%s/backends/ExportCompressed.ldif' % logsRemoteDataDir,
-                        'dsPath'         : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'extraParams'    : '-c'}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Encrypt LDIF
-            #@TestID              Encrypt LDIF
-            #@TestPurpose         Verify an export where the LDIF file is encrypted.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Encrypt LDIF'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Encrypt LDIF'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/ExportEncrypted.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-y'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/ExportEncrypted.ldif' % logsRemoteDataDir,
-                        'extraParams' : '-y',
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Export: Hash Signed LDIF
-            #@TestID              Hash Signed LDIF
-            #@TestPurpose         Verify an export where the LDIF file is hashed/signed.
-            #@TestPreamble
-            #@TestSteps           
-            #@TestPostamble
-            #@TestResult
-          -->
-    
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Wrap Column
-            #@TestID              Wrap Column
-            #@TestPurpose         Verify an export of a LDIF file containing wrapped columns
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-                <testcase name="'Backend: Export: Export Wrap Column'">
-        
-                  <sequence>
-          
-                    <call function="'testCase_Preamble'"/>
-                    <message>
-                      'Backend: Export: Export Wrap Column'
-                    </message>
-                    <call function="'exportLdif'">
-                      { 
-                        'ldifFile'       : '%s/backends/ExportWrapCol.ldif' % logsRemoteDataDir,
-                        'extraParams'    : '-w 25'
-                      }
-                    </call>
-          
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-                    
-                    <call function="'importLdif'">
-                      { 'ldifFile'    : '%s/backends/ExportWrapCol.ldif' % logsRemoteDataDir,
-                        'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-    
-                    <call function="'checktestRC'">
-                      { 'returncode' : RC ,
-                        'result'     : STAXResult }
-                    </call>
-    
-                    <!-- StartDS -->
-                    <call function="'StartDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
-                    </call>
-          
-                    <!-- Wait for DS to start -->
-                    <call function="'isAlive'">
-                      { 'location'         : mylocation,
-                        'noOfLoops'        : 1 ,
-                        'noOfMilliSeconds' : 2000,
-                        'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsInstancePort'   : DsInstancePort}
-                    </call>
-                    
-                    <call function="'checkImport'">
-                      { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
-                                             'uid=kvaughan,ou=People,dc=example,dc=com',
-                                             'uid=kwinters,ou=People,dc=example,dc=com'],
-                        'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'   : DsInstancePort,
-                        'startDS'  : 'no'}
-                    </call>
-                    
-                    <!-- StopDS -->
-                    <call function="'StopDsWithScript'">
-                      { 'location'  : mylocation,
-                        'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
-                        'dsPort'    : DsInstancePort,
-                        'dsBindDN'  : mydn,
-                        'dsBindPwd' : mypswd}
-                    </call>
-                         
-                    <call function="'testCase_Postamble'"/>
-          
-                  </sequence>
-          
-                </testcase>
-          
-          <!--- Test Case information
-            #@TestMarker          Backend Export Tests
-            #@TestName            Backend: Export: Error Codes
-            #@TestID              Error Codes
-            #@TestPurpose         Verify an export fails with an error code.
-            #@TestPreamble
-            #@TestSteps           Client calls exportLDIF with the parameters
-                                  default backend, and ldifFile. Import the ldifFile to 
-                                  a second instance, then do a search to verify the import.
-            #@TestPostamble
-            #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
-          -->
-
-
-                 <!-- Need to know what the error codes are -->									
-
-
           <import machine="STAF_LOCAL_HOSTNAME"
-            file="'%s/testcases/backends/backend_cleanup.xml' % (TESTS_DIR)"/>
+                  file="'%s/testcases/quickstart/quickstart.xml' % (TESTS_DIR)"/>
+          <call function="'main_quickstart'" />
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: LDIF Default 
+                #@TestID              LDIF Default
+                #@TestPurpose         Verify an export of a LDIF file on the default backend.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export default backend'">
+            <sequence>
+              <call function="'testCase_Preamble'" />
+              <message>
+                'Backend: Export: Export default backend'
+              </message>
+              <call function="'exportLdif'">
+                { 
+                  'ldifFile' : '%s/backends/Export_default.ldif' % logsRemoteDataDir,
+                  'backEnd'  : '%s' % DIRECTORY_INSTANCE_BE
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_default.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'   : DsInstancePort,
+                  'startDS'  : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: LDIF Non Default
+                #@TestID              LDIF Non Default
+                #@TestPurpose         Verify an export of a LDIF file on a differrent backend to the default.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      non-default backend, and ldifFile           
+                #@TestPostamble
+                #@TestResult          Success if Success if exportLDIF, importLDIF returns 0
+          -->
+          <testcase name="'Backend: Export: Export non-default backend'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export non-default backend'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile' : '%s/backends/Export_schema.ldif' % logsRemoteDataDir,
+                  'backEnd'  : 'schema'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_schema.ldif' % logsRemoteDataDir,
+                  'backEnd'     : 'schema',
+                  'dsPath'      : '%s/server2/%s' % (DIRECTORY_INSTANCE_DIR, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Include Branch
+                #@TestID              Fractional Include Branch
+                #@TestPurpose         Verify an export of a LDIF file specifying a branch that should be included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -b option. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Include Branch'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Include Branch'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_IncludeBranch.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-b "dc=com"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_IncludeBranch.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'   : DsInstancePort,
+                  'startDS'  : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Include Branches
+                #@TestID              Fractional Include Branches
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple branches that should be included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and two -b options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Include Branches'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Include Branches'
+              </message>
+              <call function="'exportLdif'">
+                { 
+                  'ldifFile'       : '%s/backends/Export_IncludeBranches.ldif' % logsRemoteDataDir,
+                  'extraParams'    : '-b "dc=com" -b "dc=example,dc=com"'
+                }
+              </call>
+    
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_IncludeBranches.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult }
+              </call>
+
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+    
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Exclude Branch
+                #@TestID              Fractional Exclude Branch
+                #@TestPurpose         Verify an export of a LDIF file specifying a branch that should be excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -B option. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Exclude Branch'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Exclude Branch'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeBranch.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-B "dc=example,dc=com"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult 
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_ExcludeBranch.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'missingEntries'  :  ['uid=tmorris,ou=People,dc=example,dc=com',
+                                        'uid=kvaughan,ou=People,dc=example,dc=com'],
+                  'expectedEntries' : ['dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Exclude Branches
+                #@TestID              Fractional Exclude Branches
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple branches that should be excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and two -B options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Exclude Branches'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Exclude Branches'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeBranches.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-B "ou=People,dc=example,dc=com" -B "dc=example,dc=com"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+                                    
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeBranches.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'missingEntries'  :  ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com'],
+                  'expectedEntries' : ['dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Branches Mix
+                #@TestID              Fractional Branches Mix
+                #@TestPurpose         Verify an export of a LDIF file specifying a mix of include and exclude branches.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, both -b and -B options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Branches Mix'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Branches Mix'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_MixBranches.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-b "dc=com" -B "ou=People,dc=example,dc=com"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_MixBranches.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort}
+              </call>
+              
+              <call function="'checkImport'">
+                { 'missingEntries'  : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com'],
+                  'expectedEntries' : ['dc=com','dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'}
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Include Attribute
+                #@TestID              Fractional Include Attribute
+                #@TestPurpose         Verify an export of a LDIF file specifying an attribute that should be included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -i option. Import the ldifFile to
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Include Attribute'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Include Attribute'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'       : '%s/backends/Export_IncludeAttr.ldif' % logsRemoteDataDir,
+                  'extraParams'    : '-i dc'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_IncludeAttr.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['dc=com','dc=example,dc=com'],
+                  'missingEntries'  : ['ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Include Attributes
+                #@TestID              Fractional Include Attributes
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple attributes that should be included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and five -i options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Include Attributes'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Include Attributes'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_IncludeAttrs.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-i dc -i cn -i ou -i sn -i uid'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_IncludeAttrs.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                         'uid=kvaughan,ou=People,dc=example,dc=com',
+                                         'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'missingAttributes' : ['userpassword'],
+                  'dsPath'            : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'            : DsInstancePort,
+                  'startDS'           : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Exclude Attribute
+                #@TestID              Fractional Exclude Attribute
+                #@TestPurpose         Verify an export of a LDIF file specifying an attribute that should be excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -e option. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Exclude Attribute'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Exclude Attribute'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeAttr.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-e userpassword'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeAttr.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com'],
+                  'missingAttributes' : ['userpassword'],
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'   : DsInstancePort,
+                  'startDS'  : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Exclude Attributes
+                #@TestID              Fractional Exclude Attributes
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple attribute that should be excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and three -e options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Exclude Attributes'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Exclude Attributes'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeAttrs.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-e userpassword -e mail -e roomnumber'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_ExcludeAttrs.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                         'uid=kvaughan,ou=People,dc=example,dc=com',
+                                         'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'missingAttributes' : ['userpassword','mail','roomnumber'],
+                  'dsPath'            : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'            : DsInstancePort,
+                  'startDS'           : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Mix
+                #@TestID              Fractional Mix
+                #@TestPurpose         Verify an export of a LDIF file specifying a mix of fractional attributes and branches.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and mixed -i, -b, and -B options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Mix'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Mix'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FractionalMix.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-i dc -i cn -i ou -i sn -i uid -b "dc=com" -b "dc=example,dc=com" -b "ou=People,dc=example,dc=com" -B "ou=Departed,ou=People,dc=example,dc=com"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FractionalMix.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries'   : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                         'uid=kvaughan,ou=People,dc=example,dc=com',
+                                         'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'missingAttributes' : ['userpassword'],                     
+                  'dsPath'            : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'            : DsInstancePort,
+                  'startDS'           : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Include
+                #@TestID              Filtered Include
+                #@TestPurpose         Verify an export of a LDIF file specifying a search filter control which entries are included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -I option. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Include'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Include'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredInclude.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-I "objectclass=*"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredInclude.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Includes
+                #@TestID              Filtered Includes
+                #@TestPurpose         Verify an export of a LDIF file specifying a search filter control which entries are included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and two -I options. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Includes'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Includes'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-I "objectclass=domain" -I "objectclass=organizationalunit"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['dc=example,dc=com', 'dc=com'],
+                  'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
+                                       'uid=dmiller,ou=People,dc=example,dc=com',
+                                       'uid=rhunt,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'}
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+                
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Exclude
+                #@TestID              Filtered Exclude
+                #@TestPurpose         Verify an export of a LDIF file specifying search filter control which entries are excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, an ldifFile, and -E option. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Exclude'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Exclude'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredExclude.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-E "objectclass=person"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredExclude.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['dc=example,dc=com',
+                                       'ou=People,dc=example,dc=com'],
+                  'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
+                                       'uid=dmiller,ou=People,dc=example,dc=com',
+                                       'uid=rhunt,ou=People,dc=example,dc=com'],
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'   : DsInstancePort,
+                  'startDS'  : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Excludes
+                #@TestID              Filtered Excludes
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple search filters control which entries are excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Excludes'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Excludes'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredExcludes.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-E "objectclass=person" -E "objectclass=organizationalunit"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredExcludes.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['dc=example,dc=com',
+                                       'dc=com'],
+                  'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
+                                       'uid=dmiller,ou=People,dc=example,dc=com',
+                                       'uid=rhunt,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Includes
+                #@TestID              Filtered Includes
+                #@TestPurpose         Verify an export of a LDIF file specifying multiple search filters control which entries are included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Includes'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Includes'
+              </message>
+              <call function="'exportLdif'">
+                { 
+                  'ldifFile'       : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
+                  'extraParams'    : '-I "objectclass=domain" -I "objectclass=organizationalunit"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredIncludes.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort}
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['dc=example,dc=com',
+                                       'ou=People,dc=example,dc=com'],
+                  'missingEntries'  : ['uid=scarter,ou=People,dc=example,dc=com',
+                                       'uid=dmiller,ou=People,dc=example,dc=com',
+                                       'uid=rhunt,ou=People,dc=example,dc=com'],
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'   : DsInstancePort,
+                  'startDS'  : 'no'}
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd}
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Includes Complex
+                #@TestID              Filtered Includes Complex
+                #@TestPurpose         Verify an export of a LDIF file specifying complex search filters control which entries are included in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Includes Complex'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Includes Complex'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredComplexIncludes.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-I "|(objectclass=person)(objectclass=domain)(objectclass=organizationalunit)"'
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredComplexIncludes.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd}
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Filtered Excludes Complex
+                #@TestID              Filtered Excludes Complex
+                #@TestPurpose         Verify an export of a LDIF file specifying complex search filters control which entries are excluded in the export.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Filtered Excludes Complex'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Filtered Excludes Complex'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredComplexExcludes.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-E "&amp;(objectclass=person)(ou=Departed)"'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredComplexExcludes.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Fractional Filtered Mix
+                #@TestID              Fractional Filtered Mix
+                #@TestPurpose         Verify an export of a LDIF file specifying a mix of fractional and filtered.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Fractional Filtered Mix'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Fractional Filtered Mix'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-E "&amp;(objectclass=person)(ou=Departed)" -b "dc=com" -e userpassword'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Append To LDIF
+                #@TestID              Append To LDIF
+                #@TestPurpose         Verify an export of a LDIF file specifying that the export process should append to the existing LDIF file.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Append To LDIF'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Append To LDIF'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-a'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/Export_FilteredMix.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Compress LDIF
+                #@TestID              Compress LDIF
+                #@TestPurpose         Verify an export where the LDIF file is compressed.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Compress LDIF'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Compress LDIF'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/ExportCompressed.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-c'
+                }
+              </call>
+              
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/ExportCompressed.ldif' % logsRemoteDataDir,
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'extraParams' : '-c'}
+              </call>
+
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)}
+              </call>
+              
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Encrypt LDIF
+                #@TestID              Encrypt LDIF
+                #@TestPurpose         Verify an export where the LDIF file is encrypted.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Encrypt LDIF'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Encrypt LDIF'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/ExportEncrypted.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-y'
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC,
+                  'result'     : STAXResult
+                }
+              </call>
+              <call function="'importLdif'">
+                { 'ldifFile'    : '%s/backends/ExportEncrypted.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-y',
+                  'dsPath'      : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Export: Hash Signed LDIF
+                #@TestID              Hash Signed LDIF
+                #@TestPurpose         Verify an export where the LDIF file is hashed/signed.
+                #@TestPreamble
+                #@TestSteps
+                #@TestPostamble
+                #@TestResult
+          -->
+          
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Wrap Column
+                #@TestID              Wrap Column
+                #@TestPurpose         Verify an export of a LDIF file containing wrapped columns
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+          <testcase name="'Backend: Export: Export Wrap Column'">
+            <sequence>
+              <call function="'testCase_Preamble'"/>
+              <message>
+                'Backend: Export: Export Wrap Column'
+              </message>
+              <call function="'exportLdif'">
+                { 'ldifFile'    : '%s/backends/ExportWrapCol.ldif' % logsRemoteDataDir,
+                  'extraParams' : '-w 25'
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              <call function="'importLdif'">
+                { 'ldifFile' : '%s/backends/ExportWrapCol.ldif' % logsRemoteDataDir,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              <call function="'checktestRC'">
+                { 'returncode' : RC ,
+                  'result'     : STAXResult
+                }
+              </call>
+              <!-- StartDS -->
+              <call function="'StartDsWithScript'">
+                { 'location' : mylocation,
+                  'dsPath'   : '%s/%s' % (DsInstanceDir, OPENDSNAME)
+                }
+              </call>
+              <!-- Wait for DS to start -->
+              <call function="'isAlive'">
+                { 'location'         : mylocation,
+                  'noOfLoops'        : 1 ,
+                  'noOfMilliSeconds' : 2000,
+                  'dsPath'           : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsInstancePort'   : DsInstancePort
+                }
+              </call>
+              <call function="'checkImport'">
+                { 'expectedEntries' : ['uid=tmorris,ou=People,dc=example,dc=com',
+                                       'uid=kvaughan,ou=People,dc=example,dc=com',
+                                       'uid=kwinters,ou=People,dc=example,dc=com'],
+                  'dsPath'          : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'          : DsInstancePort,
+                  'startDS'         : 'no'
+                }
+              </call>
+              <!-- StopDS -->
+              <call function="'StopDsWithScript'">
+                { 'location'  : mylocation,
+                  'dsPath'    : '%s/%s' % (DsInstanceDir, OPENDSNAME),
+                  'dsPort'    : DsInstancePort,
+                  'dsBindDN'  : mydn,
+                  'dsBindPwd' : mypswd
+                }
+              </call>
+              <call function="'testCase_Postamble'"/>
+            </sequence>
+          </testcase>
+            
+          <!--- Test Case information
+                #@TestMarker          Backend Export Tests
+                #@TestName            Backend: Export: Error Codes
+                #@TestID              Error Codes
+                #@TestPurpose         Verify an export fails with an error code.
+                #@TestPreamble
+                #@TestSteps           Client calls exportLDIF with the parameters
+                                      default backend, and ldifFile. Import the ldifFile to 
+                                      a second instance, then do a search to verify the import.
+                #@TestPostamble
+                #@TestResult          Success if exportLDIF, importLDIF, and checkImport returns 0
+          -->
+           <!-- Need to know what the error codes are -->
+          <import machine="STAF_LOCAL_HOSTNAME"
+                  file="'%s/testcases/backends/backend_cleanup.xml' % (TESTS_DIR)"/>
           <call function="'backend_cleanup'"> { 'stopDS' : False } </call>
-
-												    
         </sequence>
-    
       </block>
-    
     </sequence>
-
   </function>
-
 </stax>

--
Gitblit v1.10.0