mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

al_xipe
21.55.2007 a907d36e1b32fe05f0e13cefe84de560053e0e22
Replaced tabs with two whitespaces across the functional-tests
133 files modified
5414 ■■■■ changed files
opends/tests/functional-tests/shared/functions/dsadm.xml 28 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/dsconfig.xml 156 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/environment.xml 110 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/ldap.xml 114 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/security.xml 106 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/stafcmd.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/tools.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/topology.xml 108 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/utils.xml 38 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/staf-installer.xml 82 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci.xml 52 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_add_entry.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_bindtypes.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_cleanup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_compare_tests.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_delete_entry.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_effective_rights.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_import.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_modify_entry.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_modify_filter_tests.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_modify_filter_tests_aci1.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_modify_rdn.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_proxy_auth.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_rdn_wildcards.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_setup.xml 58 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_targattrfilter.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_target.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_targetattr.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_targetfilter.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/aci_targetscope.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/global_acis.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/aci/multiple_aci_tests.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/backends/backend_cleanup.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/backends/backend_setup.xml 84 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/backends/import-tasks.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/backends/import.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/backends/restore-tasks.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/cluCompare.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/cluDelete.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/cluModify.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/cluSearch.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_cleanup.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_setup.xml 58 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_setup_sav.xml 84 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/commands.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/core/core_entry_cache.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/core/core_search_sizelimit.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/core/core_search_timelimit.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/core/core_setup.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/dsconfig/dsconfig_cleanup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/dsconfig/dsconfig_get.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/dsconfig/dsconfig_list.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/dsconfig/dsconfig_setup.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_cleanup.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_dynamic.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_setup.xml 74 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_static_member.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_static_uniquemember.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/groups/group_virtual_static.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/indexes/indexes.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging.xml 16 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_cleanup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_properties.xml 632 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_retention.xml 196 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_rotation.xml 248 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_setup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_writer.xml 302 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_backup_task.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_cleanup.xml 26 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_directory_manager.xml 16 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_export_task.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_import_task.xml 12 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_new_root_user.xml 16 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_restore_task.xml 12 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_setup.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/privileges/privileges_users.xml 16 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/basic/replication_basic.xml 238 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/basic/replication_basic_setup.xml 30 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/binarycopy/binarycopy.xml 20 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/ldifimport/ldifimport.xml 18 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/replication.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/replication_cleanup.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/replication_setup.xml 22 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/resynchronization/resynchronization.xml 20 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/schema/schema.xml 54 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/replication/totalupdate/totalupdate.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/runFuncTests.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/schema/schema.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/schema/schema_cleanup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/schema/schema_dynamic.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/schema/schema_rfc_tests.xml 12 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/schema/schema_setup.xml 54 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/account_activation/security_account_activation.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/account_activation/security_account_expiration.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/account_activation/security_teardown_account_activation.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/account_activation/security_test_account.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_MD5_policy.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA1_policy.xml 18 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA256_policy.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA384_policy.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA512_policy.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_def_policy.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/bind_no_pwd/security_bind_no_pwd.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/bind_no_pwd/security_pwd_null.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/client_auth.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/client_auth_lib.xml 20 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/client_auth_setup.xml 56 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/client_auth_teardown.xml 44 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/equal_dn_mapper.xml 116 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/fingerprint_mapper.xml 512 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/subject_attribute_mapper.xml 164 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/client_auth/subject_dn_mapper.xml 278 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/jks/security_jks.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/jks/security_setup_jks.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/jks/security_teardown_jks.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pkcs12/security_pkcs12.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pkcs12/security_setup_pkcs12.xml 10 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pkcs12/security_teardown_pkcs12.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_policy/security_force_pwd_change.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_policy/security_force_pwd_change_all_users.xml 2 ●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_policy/security_mult_pwd_policies.xml 14 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_policy/security_pwd_policy.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_policy_root/security_pwd_policy_root.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_storage/security_pwd_storage.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/pwd_validator/security_pwd_validator.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/sasl/security_sasl.xml 6 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/security_cleanup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/security_setup.xml 40 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/startTLS/security_setup_startTLS.xml 8 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/startTLS/security_startTLS.xml 18 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/security/startTLS/security_teardown_startTLS.xml 4 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/functions/dsadm.xml
@@ -56,7 +56,7 @@
          Directory server JMX port number
        </function-arg-description>
        <function-arg-property name="type" value="Port number"/>
      </function-arg-def>
      </function-arg-def>
      <function-arg-def name="dsBaseDN" type="optional">
        <function-arg-description>
          Base DN (only single base DN supported).
@@ -105,14 +105,14 @@
        if dsPath:
          STAFCmd='%s/setup%s' % (dsPath,fileExt)
          STAFCmdParamsList.append('--cli')
          STAFCmdParamsList.append('-s')
          STAFCmdParamsList.append('-s')
                  
        if dsPort:
          STAFCmdParamsList.append('-p %s' % dsPort)
        
        if dsJmxPort:
          STAFCmdParamsList.append('-x %s' % dsJmxPort)
        if dsBaseDN:
          STAFCmdParamsList.append('-b "%s"' % dsBaseDN)
@@ -689,48 +689,48 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname"/>
      </function-arg-def>
      <function-arg-def name="dsHost"  type="optional" default="'%s' % DIRECTORY_INSTANCE_HOST">
        <function-arg-description>
          Directory server hostname or IP address
        </function-arg-description>
        <function-arg-property name="type" value="hostname"/>
      </function-arg-def>
      <function-arg-def name="dsPort" type="optional" default="'%s' % DIRECTORY_INSTANCE_PORT">
        <function-arg-description>
          Directory server port number
        </function-arg-description> 
        <function-arg-property name="type" value="port"/>
      </function-arg-def>
      </function-arg-def>
      <function-arg-def name="dsBindDN" type="optional" default="'%s' % DIRECTORY_INSTANCE_DN">
        <function-arg-description>
          Bind DN
        </function-arg-description>
        <function-arg-property name="type" value="DN"/>
      </function-arg-def>
      <function-arg-def name="dsBindPwd" type="optional" default="'%s' % DIRECTORY_INSTANCE_PSWD">  
        <function-arg-description>
          Bind password
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="dsBindPwdFile" type="optional">
        <function-arg-description>
          Bind password file
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
       </function-arg-def>
      <function-arg-def name="extraParams" type="optional" default="''">
        <function-arg-description>
          Optional extra parameters for specific test cases
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      </function-arg-def>
    </function-map-args>
    
  
@@ -792,12 +792,12 @@
              'noOfLoops'        : 5 ,
              'noOfMilliSeconds' : 2000 }
       </call>
          <!--
          <!--
      <call function="'checkRC'">
        { 'returncode' : RC ,
          'result'     : STAXResult }
      </call>
              -->
        -->
   
    </sequence>
  </function>
@@ -2501,7 +2501,7 @@
          <call function="'isAlive'">
            { 'noOfLoops'        : 5 ,
              'noOfMilliSeconds' : 2000 }
          </call>
          </call>
        </sequence>
      </if>
                      
opends/tests/functional-tests/shared/functions/dsconfig.xml
@@ -103,42 +103,42 @@
        </function-arg-description>
        <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-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-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-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-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-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -252,21 +252,21 @@
        </function-arg-description>
        <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-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-def>
      <function-arg-def name="attributeName" type="required">
        <function-arg-description>
          Attribute to get, e.g. minimum-password-length
@@ -334,7 +334,7 @@
        STAXCode=RC
        STAXReason=STAXResult[0][1]
      </script>
        <if expr="expectedAttributeValue == 'none'">
      <if expr="expectedAttributeValue == 'none'">
        <call function="'checktestRC'">
          { 'returncode' : STAXCode,
            'result'     : STAXReason,
@@ -343,8 +343,8 @@
        </call>
        <else>
          <call function="'checktestString'">
            { 'expectedString'  : expectedAttributeValue,
              'returnString'      :  STAXReason
            { 'expectedString'  : expectedAttributeValue,
              'returnString'    :  STAXReason
            }
          </call>
        </else>
@@ -358,7 +358,7 @@
  
  <!-- generic wrapper on dsconfig -->
  <!-- can be used to list, get or set a list of attribues -->
  <function name="dsconfig">
    <function-prolog>
      This function lists, get or set a list of attributes using dsconfig
@@ -416,28 +416,28 @@
        </function-arg-description>
        <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-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-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-def>
      <function-arg-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -459,7 +459,7 @@
        STAFCmdParamsList=[]
        STAFCmdParamsList.append(subcommand)
        if objectType:
          STAFCmdParamsList.append('--%s "%s" ' % (objectType,objectName))
          STAFCmdParamsList.append('--%s "%s" ' % (objectType,objectName))
        if optionsString:
          STAFCmdParamsList.append(' %s' % optionsString)
      </script>
@@ -488,8 +488,8 @@
        STAXReason
      </return>
    </sequence>
  </function>
  </function>
  <!-- Modify password policy using dsconfig -->
  <function name="modifyPwdPolicy">
    <function-prolog>
@@ -529,7 +529,7 @@
        </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
@@ -550,28 +550,28 @@
        </function-arg-description>
        <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-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-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-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -669,28 +669,28 @@
        </function-arg-description>
        <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-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-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-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -764,7 +764,7 @@
      <function-arg-def name="dsInstancePort" type="required">
        <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="integer" />
      </function-arg-def>
      
@@ -788,14 +788,14 @@
        </function-arg-description>
        <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-def>
      <function-arg-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -807,7 +807,7 @@
      <!-- Local variables -->
      <script>
        mylocation=location
        STAFCmdParams=''
        STAFCmdParams=''
        STAFCmd=''
        
        if dsPath:
@@ -884,7 +884,7 @@
      <function-arg-def name="dsInstancePort" type="required">
        <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="integer" />
      </function-arg-def>
      
@@ -908,28 +908,28 @@
        </function-arg-description>
        <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-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-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-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -1027,14 +1027,14 @@
        </function-arg-description>
        <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-def>
      <function-arg-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -1147,28 +1147,28 @@
        </function-arg-description>
        <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-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-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-def name="expectedRC" type="optional" default="0">
        <function-arg-description>
          Expected return code value. Default value is 0
@@ -1219,7 +1219,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>
      <function-arg-def name="dsPath" 
                        type="optional" 
                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
@@ -1228,7 +1228,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="filepath" />
      </function-arg-def>
      <function-arg-def name="host" 
                        type="optional" 
                        default="STAF_REMOTE_HOSTNAME">
@@ -1237,16 +1237,16 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>      
      <function-arg-def name="port" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PORT">
        <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="Port number" />
      </function-arg-def>
      <function-arg-def name="rootDN" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_DN">
@@ -1255,7 +1255,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="DN" />
      </function-arg-def> 
      <function-arg-def name="rootPwd" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PSWD">
@@ -1272,14 +1272,14 @@
          The Back-end ID on to which to add an index
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="indexAttribute" type="required">
        <function-arg-description>
          ldap attribute on to which to add indexing
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
      <function-arg-def name="indexTypes" type="required">
        <function-arg-description>
          type of index to add
@@ -1300,7 +1300,7 @@
    <sequence>
      <!-- Local variables -->
      <script>
        dsconfigParams=''
        dsconfigParams=''
        dsconfigCmd=''
        dsBinPath='%s/%s' % (dsPath,fileFolder)
        dsconfigCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
@@ -1335,7 +1335,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>
      <function-arg-def name="dsPath" 
                        type="optional" 
                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
@@ -1344,7 +1344,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="filepath" />
      </function-arg-def>
      <function-arg-def name="host" 
                        type="optional" 
                        default="STAF_REMOTE_HOSTNAME">
@@ -1353,16 +1353,16 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>      
      <function-arg-def name="port" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PORT">
        <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="Port number" />
      </function-arg-def>
      <function-arg-def name="rootDN" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_DN">
@@ -1371,7 +1371,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="DN" />
      </function-arg-def> 
      <function-arg-def name="rootPwd" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PSWD">
@@ -1388,14 +1388,14 @@
          The Back-end ID on to which to add an index
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="indexAttribute" type="required">
        <function-arg-description>
          ldap attribute on to which add indexing
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
      <function-arg-def name="operation">
        <function-arg-description>
          This parameters defines the operation to be performed.
@@ -1428,7 +1428,7 @@
    <sequence>
      <!-- Local variables -->
      <script>
        dsconfigParams=''
        dsconfigParams=''
        dsconfigCmd=''
        dsBinPath='%s/%s' % (dsPath,fileFolder)
        dsconfigCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
@@ -1465,7 +1465,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>
      <function-arg-def name="dsPath" 
                        type="optional" 
                        default="'%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)">
@@ -1474,7 +1474,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="filepath" />
      </function-arg-def>
      <function-arg-def name="host" 
                        type="optional" 
                        default="STAF_REMOTE_HOSTNAME">
@@ -1483,16 +1483,16 @@
        </function-arg-description>
        <function-arg-property name="type" value="hostname" />
      </function-arg-def>      
      <function-arg-def name="port" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PORT">
        <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="Port number" />
      </function-arg-def>
      <function-arg-def name="rootDN" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_DN">
@@ -1501,7 +1501,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="DN" />
      </function-arg-def> 
      <function-arg-def name="rootPwd" 
                        type="optional" 
                        default="DIRECTORY_INSTANCE_PSWD">
@@ -1529,7 +1529,7 @@
    <sequence>
      <!-- Local variables -->
      <script>
        dsconfigParams=''
        dsconfigParams=''
        dsconfigCmd=''
        dsBinPath='%s/%s' % (dsPath,fileFolder)
        dsconfigCmd='%s/%s%s' % (dsBinPath,DSCONFIG,fileExt)
@@ -1612,7 +1612,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
      <function-arg-def name="providerType"
                        type="optional"
                        default="MultimasterType">
@@ -1621,10 +1621,10 @@
        </function-arg-description>
        <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
        Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
@@ -1736,7 +1736,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
      <function-arg-def name="replicationPort" type="required">
        <function-arg-description>
          Replication port number
@@ -1757,10 +1757,10 @@
        </function-arg-description>
        <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
        Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
@@ -1904,10 +1904,10 @@
        </function-arg-description>
        <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
        Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="string" />
      </function-arg-def>
@@ -1916,7 +1916,7 @@
      <!-- Local variables -->
      <script>
        mylocation=location
        STAFCmdParams=''
        STAFCmdParams=''
        STAFCmd=''
        
        if dsPath:
opends/tests/functional-tests/shared/functions/environment.xml
@@ -26,14 +26,14 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <function name="importSharedLibraries">
    <function-prolog>
        This function imports the shared function xml libraries.
    </function-prolog>
    <sequence>
    This function imports the shared function xml libraries.
  </function-prolog>
  <sequence>
      <!--- Import all the shared xml libraries -->
      <import machine="STAF_LOCAL_HOSTNAME"
        file="'%s/baselib.xml' % (TESTS_FUNCTIONS_DIR)" />
@@ -58,7 +58,7 @@
      <import machine="STAF_LOCAL_HOSTNAME"
        file="'%s/security.xml' % (TESTS_FUNCTIONS_DIR)" />
      <import machine="STAF_LOCAL_HOSTNAME"
        file="'%s/topology.xml' % (TESTS_FUNCTIONS_DIR)" />
        
@@ -67,22 +67,22 @@
      <import machine="STAF_LOCAL_HOSTNAME"
        file="'%s/tools.xml' % (TESTS_FUNCTIONS_DIR)" />
    </sequence>
  </sequence>
  </function>
  <function name="importPythonLibraries">
    <function-prolog>
        This function imports the Python libraries and objects,
        both starndard and local shared ones.
    </function-prolog>
    This function imports the Python libraries and objects,
    both starndard and local shared ones.
  </function-prolog>
    <sequence>
      <!-- Load in any standard python libraries -->
      <script>
        import re
@@ -102,22 +102,22 @@
        from security import *
        from replication import *
      </script>     
    </sequence>
  </function>
  </sequence>
  </function>
  <function name="initialiseGlobalVariables">
    <function-prolog>
        This function initialises a set of global variables.
    </function-prolog>
    This function initialises a set of global variables.
  </function-prolog>
    <sequence>
      <!-- Resolve any OS related variables -->           
      <call function="'setOSvariables'">
        { 'hostname' : STAF_REMOTE_HOSTNAME }
@@ -146,7 +146,7 @@
        CurrentTestPath={}
        DSInfoServersDict={}
        True = 1
        False = 0
        False = 0
        DSCONFIG = 'dsconfig'          
        NO_CHECK = 'noCheck'  
@@ -155,9 +155,9 @@
        MultimasterSync = 'Multimaster Synchronization'
        MultimasterType = 'multimaster' 
      </script>
    </sequence>
  </sequence>
  </function>
  <function name="GetDirectoryServerInformation">
@@ -334,41 +334,41 @@
                                            
    </sequence>
        
  </function>
  </function>
  <function name="loadEnvironment">
    <function-prolog>
      This function loads the environment (libraries, functions, variables)
      needed by the tests.
    </function-prolog>
    needed by the tests.
  </function-prolog>
    <sequence>
      <message>
        'Load environment for test suite execution.'
      </message>
    <message>
      'Load environment for test suite execution.'
    </message>
      <call function="'importSharedLibraries'"/>
      <call function="'importPythonLibraries'"/>
      <call function="'initialiseGlobalVariables'"/>
    <call function="'importSharedLibraries'"/>
    <call function="'importPythonLibraries'"/>
    <call function="'initialiseGlobalVariables'"/>
      <call function="'GetDirectoryServerInformation'"/>
      <call function="'SetLogsDir'"/>
      <call function="'checkRC'">
        { 'returncode' : RC ,
          'result'     : STAXResult }
      </call>
        
    </sequence>
  </function>
  </sequence>
  </function>
</stax>
opends/tests/functional-tests/shared/functions/ldap.xml
@@ -83,8 +83,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    <sequence>
      <!-- Local variables -->
@@ -354,8 +354,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -556,8 +556,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    <sequence>
    
@@ -921,8 +921,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -1193,8 +1193,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0. Wildcard 'noCheck' to not check the RC
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    <sequence>
    
@@ -1403,8 +1403,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
        <function-arg-property name="type" value="integer"/>
        </function-arg-def>
    </function-map-args>
    <sequence>
      <call function="'runCommand'" >
@@ -1620,8 +1620,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -1807,8 +1807,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -2066,8 +2066,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -2258,8 +2258,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
    
@@ -2494,8 +2494,8 @@
        <function-arg-description>
          Expected return code value. Default value is 0
        </function-arg-description>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>
    
    <sequence>
@@ -2604,7 +2604,7 @@
  </function>
  
  
    <!-- Modify an attribute -->
  <!-- Modify an attribute -->
  <function name="modifyAnAttribute">
    <function-prolog>
      This function modifies an entry in the Directory Server
@@ -2616,57 +2616,57 @@
        </function-arg-description>
        <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-def>
      <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-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-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-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="DNToModify" type="required">
     <function-arg-def name="DNToModify" type="required">
        <function-arg-description>
          DN to modify
        </function-arg-description>
        <function-arg-property name="type" value="DN"/>
      </function-arg-def>
      <function-arg-def name="attributeName" type="optional">
        <function-arg-description>
          Attribute to modify
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
       <function-arg-def name="newAttributeValue" type="optional">
     <function-arg-def name="newAttributeValue" type="optional">
        <function-arg-description>
          New Attribute Value
        </function-arg-description>
@@ -2679,21 +2679,21 @@
       </function-arg-description>
       <function-arg-property name="type" value="string"/>       
     </function-arg-def>
    <function-arg-def name="changetype" type="required">
        <function-arg-description>
          Type of modification, can be delete, add, replace
        </function-arg-description>
        <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
        Expected return code value. Default value is 0
      </function-arg-description>
      <function-arg-property name="type" value="string"/>
    </function-arg-def>
    </function-arg-def>
    </function-map-args>
    <sequence>
    
@@ -2701,14 +2701,14 @@
      <script>
        mylocation=location
      
      <!-- Build the Command -->
      
        STAFCmdParamsList=[]
        STAFCmdParams=''
        STAFCmd=''
        </script>
        STAFCmdParams=''
        STAFCmd=''
    </script>
     <!-- Set common ldap arguments -->      
      <call function="'_ldapCommonArgs'"/>
@@ -2720,11 +2720,11 @@
               STAFCmdParamsList.append('-l "%s"' % anAttributeToModify)   
          </script>
      </iterate>   
      </if>
      </if>
      <script>
        if newAttributeValue:
            newAttributeValue=newAttributeValue.replace('"','QUOT')
      </script>
      </script>
      <script>
 
        if DNToModify:
@@ -2734,7 +2734,7 @@
          STAFCmdParamsList.append('-a "%s"' % attributeName)
        if newAttributeValue:
          STAFCmdParamsList.append('-v "%s"' % newAttributeValue)
          STAFCmdParamsList.append('-v "%s"' % newAttributeValue)
        if changetype:
          STAFCmdParamsList.append('-t "%s"' % changetype)
@@ -2768,8 +2768,8 @@
    
  </function>
  
    <!-- Add a New entry-->
  <!-- Add a New entry-->
  <function name="addAnEntry">
    <function-prolog>
      This function modifies an entry in the Directory Server
@@ -2796,7 +2796,7 @@
      <function-arg-def name="dsInstancePort" type="required">
         <function-arg-description>
          Directory server port number
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="Port number"/>
      </function-arg-def>
      <function-arg-def name="dsInstanceDn" type="required">
@@ -2811,7 +2811,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
        <function-arg-def name="DNToAdd" type="required">
      <function-arg-def name="DNToAdd" type="required">
        <function-arg-description>
          DN to add
        </function-arg-description>
@@ -2878,7 +2878,7 @@
  </function>
  
  
    <!-- Modify an attribute -->
  <!-- Modify an attribute -->
  <function name="modifyDn">
    <function-prolog>
      This function rename the rdn
@@ -2920,7 +2920,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
        <function-arg-def name="DNToModify" type="required">
      <function-arg-def name="DNToModify" type="required">
        <function-arg-description>
          DN to modify
        </function-arg-description>
@@ -2932,7 +2932,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
        <function-arg-def name="deleteOldRDN" type="optional">
      <function-arg-def name="deleteOldRDN" type="optional">
        <function-arg-description>
          1 : delete old rdn, 0 do not delete old rdn, default value is 1
        </function-arg-description>
@@ -2955,7 +2955,7 @@
        STAFCmdParams=''
        STAFCmd=''
      </script>
      <!-- Set common ldap arguments -->      
      <call function="'_ldapCommonArgs'" />
      <script>
@@ -2966,7 +2966,7 @@
          STAFCmdParamsList.append('-e "%s"' % newRDN)
        
        if deleteOldRDN:
          STAFCmdParamsList.append('-f "%s"' % deleteOldRDN)
          STAFCmdParamsList.append('-f "%s"' % deleteOldRDN)
        
        STAFCmdParams=' '.join(STAFCmdParamsList)
        
opends/tests/functional-tests/shared/functions/security.xml
@@ -26,9 +26,9 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
    <!-- **************************************************** -->
    <!--                       generate a certificate         -->
    <!-- **************************************************** -->
  <!-- **************************************************** -->
  <!--                       generate a certificate         -->
  <!-- **************************************************** -->
  <function name="genCertificate">
    <function-prolog>
      This function generates a server certificate
@@ -49,7 +49,7 @@
          Alias certificate
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="dname" type="optional" default="'cn=server,O=Sun Microsystems,C=US'">
      <function-arg-def name="dname" type="optional" default="'cn=server,O=Sun Microsystems,C=US'">
        <function-arg-description>
          Certificate subject
        </function-arg-description>
@@ -80,7 +80,7 @@
      <script>
        if dsPath:
          dsConfigPath='%s/config' % (dsPath)
          dsBinPath='%s/%s' % (dsPath,fileFolder)
          dsBinPath='%s/%s' % (dsPath,fileFolder)
      </script>
      <call function="'runCommand'">
        { 'name'      : 'Generate a Certificate',
@@ -134,17 +134,17 @@
      </function-arg-def>
      <function-arg-def name="storepass" type="optional" default="'servercert'">
        <function-arg-description>
            Password to protect the contents of the key store
          Password to protect the contents of the key store
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="keypass" type="optional" default="'servercert'">
        <function-arg-description>
            Password to protect the private key on the key store: keypass
          Password to protect the private key on the key store: keypass
        </function-arg-description>     
      </function-arg-def>
      <function-arg-def name="storetype" type="optional" default="'JKS'">
        <function-arg-description>
            The storetype. can be JKS or PKCS12
          The storetype. can be JKS or PKCS12
        </function-arg-description>
      </function-arg-def>
    </function-map-args>
@@ -155,7 +155,7 @@
          dsConfigPath='%s/config' % (dsPath)
          dsBinPath='%s/%s' % (dsPath,fileFolder)
      </script>
      <call function="'runCommand'" >
        { 'name'      : 'Generate a Self-Signed Server Certificate',
          'location'  : location,
@@ -180,7 +180,7 @@
  
  <!-- **************************************************** -->
  <!--                       Export  a certificate                                 -->
  <!-- **************************************************** -->
  <!-- **************************************************** -->
  <function name="ExportCertificate">
    <function-prolog>
      This function exports a certificate
@@ -257,7 +257,7 @@
        { 'returncode' : STAXCode ,
          'result'     : STAXReason }
      </call>
      <return>STAXReason</return>
      <return>STAXReason</return>
    </sequence>
  </function>
  
@@ -303,7 +303,7 @@
      <function-arg-def name="inputfile" type="required">
        <function-arg-description>
          Certificate to import
        </function-arg-description>
        </function-arg-description>
      </function-arg-def>
    </function-map-args>
    <sequence>
@@ -314,7 +314,7 @@
          dsConfigPath='%s/config' % (dsPath)
          dsBinPath='%s/%s' % (dsPath,fileFolder)
      </script>
      <call function="'runCommand'">
        { 'name'        : 'Import a Certificate',
          'location'    : location,
@@ -332,14 +332,14 @@
          'result'     : STAXReason 
        }
      </call>
      <return>STAXReason</return>
      <return>STAXReason</return>
    </sequence>
  </function>
  
  
  <!-- **************************************************** -->
  <!--                      get MD5 and SHA1 values         -->
  <!-- **************************************************** -->
  <!-- **************************************************** -->
  <function name="getFingerprint">
    <function-prolog>
      This function returns the fingerprint MD5 or SHA1
@@ -349,15 +349,15 @@
        <function-arg-description>
          Location of target host
        </function-arg-description>
      </function-arg-def>
      </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-def>
      </function-arg-def>
      <function-arg-def name="certAlias" type="optional" default="'server-cert'">
        <function-arg-description>
            Alias certificate
          Alias certificate
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="keystore" type="optional" default="'keystore'">
@@ -405,9 +405,9 @@
  </function>
  
  
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!--  configure SSL  -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="configureSSL">
    <function-prolog>
      This function makes the configuration changes for SSL
@@ -457,13 +457,13 @@
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="keystorePin" type="optional" default="'servercert'">
        <function-arg-description>
          Keystore pin
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -525,7 +525,7 @@
        option3='--set key-manager-provider-dn:"cn=%s,cn=Key Manager Providers,cn=config"' % (keystoreType)
        option4='--set listen-port:%s' % DIRECTORY_INSTANCE_SSL_PORT
        option5='--set enabled:true' 
        optionsString='%s %s %s %s %s' % (option1,option2,option3,option4,option5)
        optionsString='%s %s %s %s %s' % (option1,option2,option3,option4,option5)
      </script>
      
      <call function="'dsconfig'">
@@ -546,9 +546,9 @@
  </function>
  
  
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!--  configureTLS -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="configureTLS">
    <function-prolog>
      This function makes the configuration changes for startTLS
@@ -591,9 +591,9 @@
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="keystorePin" type="optional" default="'servercert'">
          <function-arg-description>
        <function-arg-description>
          Keystore pin
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="certAlias" type="optional" default="'server-cert'">
@@ -604,7 +604,7 @@
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -640,7 +640,7 @@
         'Configure Trust Manager Provider'
      </message>
      <call function="'dsconfig'">
        { 'location'       : location,
          'dsPath'         : dsPath,
@@ -666,7 +666,7 @@
        option2='--set trust-manager-provider-dn:"cn=Blind Trust,cn=Trust Manager Providers,cn=config" '
        option3='--set key-manager-provider-dn:"cn=%s,cn=Key Manager Providers,cn=config"' % (keystoreType)
        option4='--set allow-start-tls:true' 
        optionsString='%s %s %s %s' % (option1,option2,option3,option4)
        optionsString='%s %s %s %s' % (option1,option2,option3,option4)
      </script>
      
      <call function="'dsconfig'">
@@ -687,9 +687,9 @@
  </function>
  
  
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!--  configure SSL  and TLS -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="configureSSL_TLS">
    <function-prolog>
      This function makes the configuration changes for SSL and TLS
@@ -734,7 +734,7 @@
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="certAlias" type="optional" default="'server-cert'">
@@ -743,9 +743,9 @@
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="keystorePin" type="optional" default="'servercert'">
          <function-arg-description>
        <function-arg-description>
          Keystore pin
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -809,7 +809,7 @@
        option4='--set listen-port:%s' % DIRECTORY_INSTANCE_SSL_PORT
        option5='--set enabled:true'
        optionsString='%s %s %s %s %s' % (option1,option2,option3,option4,option5)
      </script>
      </script>
      
      <call function="'dsconfig'">
        { 'location'       : location,
@@ -836,9 +836,9 @@
        option2='--set trust-manager-provider-dn:"cn=Blind Trust,cn=Trust Manager Providers,cn=config" '
        option3='--set key-manager-provider-dn:"cn=%s,cn=Key Manager Providers,cn=config"' % (keystoreType)
        option4='--set allow-start-tls:true' 
        optionsString='%s %s %s %s' % (option1,option2,option3,option4)
        optionsString='%s %s %s %s' % (option1,option2,option3,option4)
      </script>
      <call function="'dsconfig'">
        { 'location'       : location,
          'dsPath'         : dsPath,
@@ -855,11 +855,11 @@
      </call>
    </sequence>
  </function>
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!-- Unconfigure SSL -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="unconfigureSSL">
    <function-prolog>
      This function reverses the configuration changes for SSL
@@ -902,9 +902,9 @@
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
          <function-arg-description>
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -974,11 +974,11 @@
      </call>
    </sequence>
  </function>
  
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!--  unconfigureTLS -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="unconfigureTLS">
    <function-prolog>
      This function reverses the configuration changes for startTLS
@@ -1023,7 +1023,7 @@
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -1072,7 +1072,7 @@
          'expectedRC'     : 0 
        }
      </call>
      <!--- Disable Key Manager Provider -->
      <message>
        'Disabling Key Manager Provider'
@@ -1096,9 +1096,9 @@
  </function>
  
  
  <!-- ################################################## -->
  <!-- ################################################## -->
  <!-- Unconfigure SSL and TLS -->
  <!-- ################################################## -->
  <!-- ################################################## -->
  <function name="unconfigureSSL_TLS">
    <function-prolog>
      This function reverses the configuration changes for SSL and TLS
@@ -1143,7 +1143,7 @@
      <function-arg-def name="keystoreType" type="optional" default="'JKS'">
        <function-arg-description>
          Keystore type : JKS or PKCS12
        </function-arg-description>
        </function-arg-description>
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="extraParams" type="optional">
@@ -1212,7 +1212,7 @@
          'expectedRC'     : 0
        }
      </call>
      <!--- Disable Key Manager Provider -->
      <message>
        'Disabling Key Manager Provider'
opends/tests/functional-tests/shared/functions/stafcmd.xml
@@ -636,12 +636,12 @@
          Name of folder to be list
        </function-arg-description>
        <function-arg-property name="type" value="filepath"/>
      </function-arg-def>
    </function-arg-def>
      <function-arg-def name="filename" type="required">
        <function-arg-description>
          Name of file to be list
        </function-arg-description>
        <function-arg-property name="type" value="filepath"/>
        <function-arg-property name="type" value="filepath"/>
      </function-arg-def>      
    </function-map-args>
@@ -672,6 +672,6 @@
      <return>cmdRC</return>
      </sequence>
    </function>
    </function>
</stax>
opends/tests/functional-tests/shared/functions/tools.xml
@@ -494,7 +494,7 @@
          <script>
            if STAXResult != 0 :
              failedServers.append('%s:%s' % (server.getHostname(), server.getPort()))
          </script>
          </script>
        </sequence>
      </iterate>
      <if expr="len(failedServers) > 0">
@@ -579,7 +579,7 @@
      </paralleliterate>
      
      <if expr="startDS">
        <!-- Stop the servers in the list -->
        <!-- Stop the servers in the list -->
        <call function="'stopServers'">
          [serverList]
        </call>
@@ -602,14 +602,14 @@
    </function-list-args>
      
    <sequence>
      <!-- Start the servers in the list -->
      <!-- Start the servers in the list -->
      <paralleliterate var="server" in="serverList">
        <sequence>
          <message>
            'Start DS on host  %s to run on port %s' % (server.getHostname(),server.getPort())
          </message>
          
          <!--- Start DS -->
          <!--- Start DS -->
          <call function="'StartDsWithScript'">
            { 'location' : server.getHostname(),
              'dsPath'   : '%s/%s' % (server.getDir(),OPENDSNAME)
@@ -648,7 +648,7 @@
    </function-list-args>
    
    <sequence>
      <!-- Stop the servers in the list -->
      <!-- Stop the servers in the list -->
      <paralleliterate var="server" in="serverList">
        <sequence>
          <message>
opends/tests/functional-tests/shared/functions/topology.xml
@@ -35,7 +35,7 @@
        <function-arg-description>
          Topology Description file
        </function-arg-description>
        <function-arg-property name="type" value="filePath"/>
        <function-arg-property name="type" value="filePath"/>
      </function-arg-def>
      <function-arg-def name="initialiseInstance" type="optional" default="False">
        <function-arg-description>
@@ -50,7 +50,7 @@
        <function-arg-property name="type" value="string"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
      <script>
        if not sharedDataFolder and CurrentTestPath.has_key('group'):
@@ -61,21 +61,21 @@
        { 'groupDataDir' : sharedDataFolder }
      </call>
      <if expr="topologyDescFile == None">
      <if expr="topologyDescFile == None">
        <!-- SINGLE instance deployment: read parameters from config.py (done by default) -->
        <sequence>
          <message>
            'SINGLE instance deployment: read parameters from config.py'
          </message>
          <call function="'createInstance'" />
            <if expr="RC == 0 and initialiseInstance == True">
              <sequence>
          <if expr="RC == 0 and initialiseInstance == True">
            <sequence>
              <!-- Load the server with default data -->
              <import machine="STAF_LOCAL_HOSTNAME"
                file="'%s/testcases/quickstart/quickstart.xml' % (TESTS_DIR)" />
              <call function="'main_quickstart'"/>
            </sequence>
            </if>
          </if>
        </sequence>
        <else>
          <!-- MULTIPLE instance deployment: read parameters from topologyDescFile -->
@@ -112,7 +112,7 @@
                     !  (i.e. server is a changelog server and/or has synchronized suffixes) 
                -->
                <if expr="server.requiresSynchronization()">
                  <sequence>
                  <sequence>
                    <message>
                      'Instance requires REPLICATION configuration.'
                    </message>
@@ -129,13 +129,13 @@
    </sequence>
  </function>
  
  <function name="prepareInstanceCreation">
    <function-prolog>
      This function prepares locally the necessary 
      files to create an instance: data zip file and OpenDS zip file.
    </function-prolog>
    </function-prolog>
    <function-map-args>     
      <function-arg-def name="groupDataDir" type="optional" default="''">
        <function-arg-description>
@@ -143,7 +143,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="string"/>     
      </function-arg-def>
    </function-map-args>
    </function-map-args>
    <sequence>
      <!-- ON LOCAL HOST: get data ready to copy to remote host -->
      <script>
@@ -254,9 +254,9 @@
      </if>
    </sequence>
  </function>
  <function name="createInstance">
    <function-prolog>
      This function creates an instance on a given host.
@@ -267,54 +267,54 @@
    <function-map-args>
      <function-arg-def name="dsHost" type="optional" default="DIRECTORY_INSTANCE_HOST">
        <function-arg-description>
        Hostname where the instance is to be created
      </function-arg-description>
        Hostname where the instance is to be created
      </function-arg-description>
          <function-arg-property name="type" value="hostname"/>
      </function-arg-def>
      <function-arg-def name="dsDir" type="optional" default="DIRECTORY_INSTANCE_DIR">
        <function-arg-description>
        Directory where OpenDS will be installed
        Directory where OpenDS will be installed
      </function-arg-description>
          <function-arg-property name="type" value="filepath"/>
        </function-arg-def>
      <function-arg-def name="dsPort" type="optional" default="DIRECTORY_INSTANCE_PORT">
        <function-arg-description>
        Directory Server port number
        Directory Server port number
      </function-arg-description>
          <function-arg-property name="type" value="Port number"/>
      </function-arg-def>
      <function-arg-def name="dsSslPort" type="optional" default="DIRECTORY_INSTANCE_SSL_PORT">
        <function-arg-description>
        Directory Server SSL port number
        Directory Server SSL port number
      </function-arg-description>
          <function-arg-property name="type" value="Port number"/>
      </function-arg-def>
      <function-arg-def name="dsJmxPort" type="optional" default="None">
        <function-arg-description>
        Directory Server JMX port number
        Directory Server JMX port number
      </function-arg-description>
          <function-arg-property name="type" value="Port number"/>
      </function-arg-def>
      </function-arg-def>
      <function-arg-def name="dsBindDN" type="optional" default="DIRECTORY_INSTANCE_DN">
        <function-arg-description>
        Directory Manager DN
        Directory Manager DN
      </function-arg-description>
          <function-arg-property name="type" value="DN"/>
      </function-arg-def>
      <function-arg-def name="dsBindPwd" type="optional" default="DIRECTORY_INSTANCE_PSWD">
        <function-arg-description>
        Directory Server SSL port number
        Directory Server SSL port number
      </function-arg-description>
          <function-arg-property name="type" value="string"/>
      </function-arg-def>
      <function-arg-def name="dsBaseDN" type="optional" default="DIRECTORY_INSTANCE_SFX">
        <function-arg-description>
        Directory Server base suffix dn
        Directory Server base suffix dn
      </function-arg-description>
          <function-arg-property name="type" value="DN"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
      <message>
        'Create instance in host %s at directory %s' % (dsHost,dsDir)
@@ -458,16 +458,16 @@
    <function-prolog>
      This function configures replication in a given server.
    </function-prolog>
    <function-list-args>
      <function-arg-def name="syncserverMap" type="required">
        <function-arg-description>
          Map containing a Server class instance representing the server to configure.
          Map containing a Server class instance representing the server to configure.
        </function-arg-description>
        <function-arg-property name="type" value="map"/>
      </function-arg-def>
    </function-list-args>
    <sequence>
      <script>
        syncserver = syncserverMap['instance']
@@ -500,7 +500,7 @@
        syncserverPath = '%s/%s' % (syncserver.getDir(),OPENDSNAME)
      </script>
      
      <!--- Start DS -->
      <!--- Start DS -->
      <call function="'StartDsWithScript'">
        { 'location' : syncserver.getHostname(),
           'dsPath'  : syncserverPath
@@ -516,7 +516,7 @@
      <message>
        'Add replication configuration entries in %s' % remoteFilePath
      </message>
      <call function="'addEntry'">
        { 'location'       : syncserver.getHostname(),
          'dsPath'         : syncserverPath,
@@ -534,7 +534,7 @@
        }
      </call>
      
      <!--- Stop DS -->
      <!--- Stop DS -->
      <call function="'StopDsWithScript'">
        { 'location'  : syncserver.getHostname(),
          'dsHost'    : syncserver.getHostname(),
@@ -558,18 +558,18 @@
    <function-prolog>
      This function configures replication in a given server.
    </function-prolog>
    <function-list-args>
      <function-arg-def name="syncserver" type="required">
        <function-arg-description>
          Server class instance representing the server to configure.
          Server class instance representing the server to configure.
        </function-arg-description>
        <function-arg-property name="type" value="Server"/>
      </function-arg-def>
    </function-list-args>
    <sequence>
      <!--- Configure replication using dsconfig -->
      <!--- Configure replication using dsconfig -->
      <message>
        'Configure replication on server on host %s at directory %s' % (syncserver.getHostname(),syncserver.getDir())  
      </message>
@@ -578,7 +578,7 @@
        syncserverPath = '%s/%s' % (syncserver.getDir(),OPENDSNAME)
      </script>
      
      <!--- Start DS -->
      <!--- Start DS -->
      <call function="'StartDsWithScript'">
        { 'location' : syncserver.getHostname(),
           'dsPath'  : syncserverPath
@@ -645,7 +645,7 @@
        </sequence>
      </iterate>
      
      <!--- Stop DS -->
      <!--- Stop DS -->
      <call function="'StopDsWithScript'">
        { 'location'  : syncserver.getHostname(),
          'dsHost'    : syncserver.getHostname(),
@@ -659,7 +659,7 @@
  </function>
  
  
  <function name="readTopology">
    <function-prolog>
      This function reads the topology from a given file.
@@ -670,12 +670,12 @@
    <function-map-args>
      <function-arg-def name="file" type="required">
        <function-arg-description>
          File containing the topology description.
          File containing the topology description.
        </function-arg-description>
        <function-arg-property name="type" value="filePath"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
      <message>
        'Parse file %s for topology parameters' % file
@@ -683,7 +683,7 @@
      
      <script>
        _topologyServerList = []
        f = open(file, 'r')
        
        hostname = None
@@ -736,7 +736,7 @@
                prt = item[item.find(':') + 1:]
                changelogServer.addChangelogServer(srv, prt)
              server.addChangelogServer(changelogServer)
            for suffix in suffixList:
              synchroSuffix = SynchronizedSuffix(suffix, serverId)
              for item in changelogList:
@@ -785,9 +785,9 @@
      </script>
    </sequence>
  </function>
  <function name="removeInstance">
    <function-prolog>
      This function removes an instance on a given host.
@@ -796,13 +796,13 @@
    <function-map-args>
      <function-arg-def name="dsHost" type="optional" default="DIRECTORY_INSTANCE_HOST">
        <function-arg-description>
          Hostname where the instance is to be created
        </function-arg-description>
          Hostname where the instance is to be created
        </function-arg-description>
        <function-arg-property name="type" value="hostname"/>
      </function-arg-def>
      <function-arg-def name="dsDir" type="optional" default="DIRECTORY_INSTANCE_DIR">
        <function-arg-description>
          Directory where OpenDS will be installed
          Directory where OpenDS will be installed
        </function-arg-description>
        <function-arg-property name="type" value="filepath"/>
      </function-arg-def>
@@ -860,24 +860,24 @@
      </if>
    </sequence>
  </function>
  
  <function name="removeTopology">
    <function-prolog>
      This function removes the topology created for the Test Group/Suite.
    </function-prolog>
    </function-prolog>
    <function-map-args>
      <function-arg-def name="multipleInstanceTopology" type="optional" default="False">
        <function-arg-description>
          Tells whether it is a single (i.e. parameters read from config.py) or
          a multiple-instance topology (i.e. parameters read from topology desc file).
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
      <if expr="multipleInstanceTopology == False">
      <if expr="multipleInstanceTopology == False">
        <!-- SINGLE instance deployment: parameters read from config.py (done by default) -->
        <call function="'removeInstance'" />
        <else>
opends/tests/functional-tests/shared/functions/utils.xml
@@ -105,7 +105,7 @@
        <function-arg-property name="type" value="integer"/>
      </function-arg-def>
    </function-map-args>  
    <sequence>
    <sequence>
      <if expr="expected == NO_CHECK">
        <return/>
      </if>        
@@ -113,9 +113,9 @@
        <sequence>
          <if expr="STAXCurrentTestcase != None">
            <sequence>
              <tcstatus result="'pass'"/>
              <tcstatus result="'pass'"/>
            </sequence>
          </if>
          </if>
          <message log="1">
            'SUCCESS: RC=%s, Expected %s, Result=%s' % (returncode,expected,result)
          </message>
@@ -127,9 +127,9 @@
        <sequence>
          <if expr="STAXCurrentTestcase != None">
            <sequence>
              <tcstatus result="'fail'"/>
              <tcstatus result="'fail'"/>
            </sequence>
          </if>
          </if>
          <message log="1" level="'Error'">
            'ERROR : RC=%s, Expected %s, Result=%s' % (returncode,expected,result)
          </message>
@@ -139,37 +139,37 @@
    </sequence>
  </function>
<!-- testPassed  -->
<!-- Set the test status to PASS -->
<!-- Set the test status to PASS -->
 <function name="testPassed">
    <function-prolog>
      This function set the status of the tests: PASS
    </function-prolog>
    <sequence>
       <message>'Set test status to PASS'</message>
       <tcstatus result="'pass'"/>
     <message>'Set test status to PASS'</message>
       <tcstatus result="'pass'"/>
    </sequence>
 </function>
<!-- testFailed -->
<!-- Set the test status to  FAIL -->
<!-- Set the test status to  FAIL -->
 <function name="testFailed">
    <function-prolog>
      This function set the status of the tests: FAIL
    </function-prolog>
    <sequence>
       <message>'Set test status to FAIL'</message>
       <tcstatus result="'fail'"/>
     <message>'Set test status to FAIL'</message>
       <tcstatus result="'fail'"/>
    </sequence>
  </function>
<!-- checktestString -->
<!-- checktestString -->
  <function name="checktestString">
    <function-prolog>
      This function checks the return string against an expected return substring for a testcase
@@ -197,7 +197,7 @@
      <if expr='re.search(searchre, returnString) != None'>
        <sequence>
          <tcstatus result="'pass'"/>
          <tcstatus result="'pass'"/>
          <message log="1">
            'SUCCESS :  Found substring, %s, in the return string' % (expectedString)
          </message>
@@ -1002,7 +1002,7 @@
    </sequence>
  </function>
  
   
  <function name="CheckMatches">
opends/tests/functional-tests/staf-installer.xml
@@ -27,9 +27,9 @@
<project name="opends-staf-installer" basedir="." default="usage">
  <description>
        Installer ant file for the staf platform
        This allows tests that need a running instance of staf to easily
        get one and hides all the complexity under the hood
    Installer ant file for the staf platform
    This allows tests that need a running instance of staf to easily
    get one and hides all the complexity under the hood
  </description>
  <dirname file="${basedir}/.." property="project.home"/>
  
@@ -86,9 +86,9 @@
  
<!-- Usage section - top     -->
  <!-- Default target => how to use this file -->
    <target name="usage"
  <target name="usage"
          description="Gives a message that helps using this file">
        <echo>Installer usage:
    <echo>Installer usage:
 main targets=
   usage      : print this message
   status     : report if the staf is installed and running
@@ -105,9 +105,9 @@
   start      : start the staf unless it is already running
   stop       : stop the staf if it is already running
   uninstall  : uninstall the staf if it is installed</echo>
    </target>
  </target>
<!-- Usage section - bottom  -->
<!-- Downloader section - top    -->
  <target name="download-do-prepare-check-proxy" unless="proxy.disabled">
    <echo>Checking for proxy [${proxy.host}:${proxy.port}] as user [${proxy.user}].</echo>
@@ -224,7 +224,7 @@
        dest="${staf.install.dir}/services"/>
  </target>
    <target name="install-staf-jar"
  <target name="install-staf-jar"
          description="deploy the staf bits"
          if="staf.archive.is.jar">
    <echo message="Installing staf, please wait, it'll take some time..."    />
@@ -237,7 +237,7 @@
      <available file="${staf.install.dir}/bin/STAF.cfg"/>
    </condition>
  </target>
  <target name="install-staf-tar" if="staf.archive.is.tar">
    <delete dir="${bits.download.dir}/staf"/>
    <gunzip
@@ -860,7 +860,7 @@
<!-- Uninstallation section - top    -->
  <target name="uninstall-do-jar"
          description="Uninstall the staf"
                    if="staf.install.is.jar">
          if="staf.install.is.jar">
    <echo message="Uninstalling staf, please wait..."                        />
    <java jar="${staf.install.dir}/_uninst/uninstall.jar" fork="true">
      <arg value="-silent" />
@@ -895,21 +895,21 @@
    name="uninstall-dont" 
    depends="uninstall-dont-running,uninstall-dont-not-installed" />
  
    <target name="uninstall" depends="status-do,uninstall-do,uninstall-dont">
    </target>
  <target name="uninstall" depends="status-do,uninstall-do,uninstall-dont">
  </target>
<!-- Uninstallation section - bottom -->
<!-- Start section - top       -->
  <target name="start-do" 
          description="start the staf"
          if="staf.installed"
          unless="staf.running" >
        <echo message="Starting staf daemon ... on ${os.myname}" />
        <condition property="staf.spawn">
            <not>
                <isset property="staf.spawn"/>
            </not>
        </condition>
    <echo message="Starting staf daemon ... on ${os.myname}" />
    <condition property="staf.spawn">
      <not>
        <isset property="staf.spawn"/>
      </not>
    </condition>
    <echo message="Starting STAF..."/>
    <exec
      dir="${staf.bin.dir}"
@@ -932,20 +932,20 @@
  <target name="start-dont" if="staf.running">
    <echo>Staf is already running.</echo>
  </target>
    <target name="start" depends="status-do">
        <antcall target="start-do"/>
  <target name="start" depends="status-do">
    <antcall target="start-do"/>
    <antcall target="start-dont"/>
    </target>
    <target name="start-nodetach">
        <property name="staf.spawn" value="false"/>
        <antcall target="start"/>
    </target>
  </target>
  <target name="start-nodetach">
    <property name="staf.spawn" value="false"/>
    <antcall target="start"/>
  </target>
<!-- Start section - bottom    -->
  
<!-- Stop section - top     -->
    <target name="stop-do" if="staf.running">
        <echo>Stopping staf...</echo>
  <target name="stop-do" if="staf.running">
    <echo>Stopping staf...</echo>
    <exec
      executable="${staf.executable}" 
      >
@@ -968,11 +968,11 @@
    <echo>Staf is not running.</echo>
  </target>
  <target name="stop" depends="status-do">
        <antcall target="stop-do"/>
    <antcall target="stop-do"/>
    <antcall target="stop-dont"/>
    </target>
  </target>
<!-- Stop section - bottom  -->
<!-- Status section - top    -->
  <!-- Bits status section - top -->
    <target name="status-archive-downloaded?" if="bits.all.downloaded.before">
@@ -996,7 +996,7 @@
      <antcall target="status-archive-not-downloaded?" />
    </target>
  <!-- Installation status section - bottom -->
  <!-- Running status section - top -->
    <target name="status-staf-running?" if="staf.running">
      <echo>staf is listening on port [${staf.port.default}]</echo>
@@ -1098,18 +1098,18 @@
<!-- Status section - bottom -->
<!-- Macros section - top -->
    <target name="bootstrap">
  <target name="bootstrap">
    <antcall target="download"  />
        <antcall target="install"   />
        <antcall target="start"     />
    </target>
    <target name="wipeout">
        <antcall target="stop"/>
    <antcall target="install"   />
    <antcall target="start"     />
  </target>
  <target name="wipeout">
    <antcall target="stop"/>
    <echo>Allow a minute for STAF to bring all the JVMs down</echo>
    <sleep seconds="60"/>
        <antcall target="uninstall"/>
    </target>
    <antcall target="uninstall"/>
  </target>
  <target name="restart">
    <antcall target="stop"  inheritAll="false" />
opends/tests/functional-tests/testcases/aci/aci.xml
@@ -26,106 +26,96 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="main_aci"/>
  <function name="main_aci">
    <sequence>
      <block name="'aci'">
      
        <sequence>
          <script>
            CurrentTestPath['group']='aci'
            GLOBAL_ACI_SEARCH="(targetattr!=\"userPassword||authPassword\")(version 3.0; acl \"Anonymous read access\"; allow (read,search,compare) userdn=\"ldap:///anyone\";)"
          </script>
          <call function="'testGroup_Preamble'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/global_acis.xml' % (TESTS_DIR)"/>
          <call function="'global_acis'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_target.xml' % (TESTS_DIR)"/>
          <call function="'aci_target'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_targetattr.xml' % (TESTS_DIR)"/>
          <call function="'aci_targetattr'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_targetfilter.xml' % (TESTS_DIR)"/>
          <call function="'aci_targetfilter'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_targattrfilter.xml' % (TESTS_DIR)"/>
          <call function="'aci_targattrfilter'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_targetscope.xml' % (TESTS_DIR)"/>
          <call function="'aci_targetscope'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_delete_entry.xml' % (TESTS_DIR)"/>
          <call function="'aci_delete_entry'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_add_entry.xml' % (TESTS_DIR)"/>
          <call function="'aci_add_entry'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_modify_entry.xml' % (TESTS_DIR)"/>
          <call function="'aci_modify_entry'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_modify_filter_tests.xml' % (TESTS_DIR)"/>
          <call function="'aci_modify_filter_tests'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_compare_tests.xml' % (TESTS_DIR)"/>
          <call function="'aci_compare_tests'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/multiple_aci_tests.xml' % (TESTS_DIR)"/>
          <call function="'multiple_aci_tests'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_modify_rdn.xml' % (TESTS_DIR)"/>
          <call function="'aci_modify_rdn'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_rdn_wildcards.xml' % (TESTS_DIR)"/>
          <call function="'aci_rdn_wildcards'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_bindtypes.xml' % (TESTS_DIR)"/>
          <call function="'aci_bindtypes'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_proxy_auth.xml' % (TESTS_DIR)"/>
          <call function="'aci_proxy_auth'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_effective_rights.xml' % (TESTS_DIR)"/>
          <call function="'aci_effective_rights'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_import.xml' % (TESTS_DIR)"/>
          <call function="'aci_import'" />
          <call function="'testGroup_Postamble'"/>
        </sequence>
      </block>
    </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/aci/aci_add_entry.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -57,7 +57,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1919,7 +1919,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_bindtypes.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -5623,7 +5623,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,32 +58,32 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/aci/aci_compare_tests.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1799,7 +1799,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_delete_entry.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -57,7 +57,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -2321,8 +2321,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_effective_rights.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
opends/tests/functional-tests/testcases/aci/aci_import.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
           <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -278,13 +278,13 @@
    
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_modify_entry.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -57,7 +57,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -3335,7 +3335,7 @@
            </testcase>
            <!---
              Place test-specific test information here.
              The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -3376,10 +3376,10 @@
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
opends/tests/functional-tests/testcases/aci/aci_modify_filter_tests.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -56,7 +56,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -528,8 +528,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
        </sequence>
      
      </block>
opends/tests/functional-tests/testcases/aci/aci_modify_filter_tests_aci1.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
opends/tests/functional-tests/testcases/aci/aci_modify_rdn.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -2151,7 +2151,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_proxy_auth.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          
opends/tests/functional-tests/testcases/aci/aci_rdn_wildcards.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -2081,7 +2081,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_setup.xml
@@ -40,34 +40,34 @@
          <script>
            CurrentTestPath['group']='aci'
          </script>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -86,18 +86,18 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
          <block name="'Block DS Load Data'">
          <!-- Load the data needed by the test suite -->
            <sequence>
      <block name="'Block DS Load Data'">
      <!-- Load the data needed by the test suite -->
        <sequence>
              <message>
                'ACI: ACI Setup: Adding Initial Entries'
              </message>
@@ -116,10 +116,10 @@
              </call>
    
            </sequence>      
          <!--- End Block DS Load Data -->
          </block>
          <!--- End Block DS Load Data -->
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/aci/aci_targattrfilter.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -57,7 +57,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1663,8 +1663,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_target.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -3857,12 +3857,12 @@
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_targetattr.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          
@@ -53,11 +53,11 @@
              #@TestScript                aci_targetattr.xml
          -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
              Place test-specific test information here.
              The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1507,7 +1507,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>          
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_targetfilter.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          
@@ -57,7 +57,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -3014,8 +3014,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
 
        </sequence>
opends/tests/functional-tests/testcases/aci/aci_targetscope.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1066,12 +1066,12 @@
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/global_acis.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
            <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -891,7 +891,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/aci/multiple_aci_tests.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -57,8 +57,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/aci/aci_setup.xml' % (TESTS_DIR)"/>
          <call function="'aci_setup'" />
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -4050,7 +4050,7 @@
            file="'%s/testcases/aci/aci_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'aci_cleanup'" />         
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/backends/backend_cleanup.xml
@@ -37,7 +37,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>    
    </function-map-args>
  </function-map-args>
    <sequence>
@@ -45,10 +45,10 @@
      
        <sequence>
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -66,33 +66,33 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          </if>
      </if>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/backends/backend_setup.xml
@@ -37,49 +37,49 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>  
      <function-arg-def name="loadBackend" type="optional" default="False">
        <function-arg-description>
          Specifies whether the backend should be loaded with some data.
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
    </function-map-args>
    <function-arg-def name="loadBackend" type="optional" default="False">
      <function-arg-description>
      Specifies whether the backend should be loaded with some data.
    </function-arg-description>
    <function-arg-property name="type" value="boolean"/>
    </function-arg-def>
  </function-map-args>
    <sequence>
      <block name="'setup'">
      
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : False }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : False }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <if expr="loadBackend == True">
          <block name="'Block DS Load Data'">
          <!-- Load the data needed by the test suite -->
            <sequence>
      <block name="'Block DS Load Data'">
      <!-- Load the data needed by the test suite -->
        <sequence>
              <message>
                'Backend: Backend Setup for Export, Backup, and Restore Tests'
              </message>
@@ -90,19 +90,19 @@
              <call function="'checkRC'">
                { 'returncode' : RC ,
                  'result'     : STAXResult }
              </call>
              </call>
            </sequence>      
          <!--- End Block DS Load Data -->
          </block>
          </if>
          <if expr="startDS == True">
          <block name="'Block DS Process Active'">
          <!--- End Block DS Load Data -->
      </block>
      </if>
      <if expr="startDS == True">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -121,15 +121,15 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </if>
          </block>
      </if>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/backends/import-tasks.xml
@@ -34,7 +34,7 @@
        <sequence>
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='backends'
              CurrentTestPath['group']='backends'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          <call function="'testSuite_Preamble'"/>
@@ -50,7 +50,7 @@
          -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
          <call function="'backend_setup'" />
          <call function="'backend_setup'" />
          <!--- Test Case information
            #@TestMarker          Backend Import Tasks Tests
            #@TestName            Import Tasks: LDIF Default
opends/tests/functional-tests/testcases/backends/import.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='backends'
              CurrentTestPath['group']='backends'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
                      
@@ -60,8 +60,8 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
          <call function="'backend_setup'"> { 'startDS' : False } </call>
          <!--- Test Case information
          #@TestMarker          Backend Import Tests
          #@TestName            Backend: Import: LDIF Default
@@ -1295,13 +1295,13 @@
    
          <!-- 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>
          <call function="'backend_cleanup'"> { 'stopDS' : False } </call>
          <call function="'testSuite_Postamble'"/>
  
        </sequence>
opends/tests/functional-tests/testcases/backends/restore-tasks.xml
@@ -48,7 +48,7 @@
          -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/backends/backend_setup.xml' % (TESTS_DIR)"/>
          <call function="'backend_setup'"> { 'loadBackend' : True } </call>
          <call function="'backend_setup'"> { 'loadBackend' : True } </call>
          
          <!--- Test Case information
            #@TestMarker          Backend Restore Tasks Tests
opends/tests/functional-tests/testcases/clu/cluCompare.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='clu'
              CurrentTestPath['group']='clu'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -61,8 +61,8 @@
            file="'%s/testcases/clu/clu_setup.xml' % (TESTS_DIR)"/>
          <call function="'clu_setup'"> 
            { 'startDS' : True,
              'loadBackend' : True }
          </call>
        'loadBackend' : True }
          </call>
          
         
          <!--- Test Case information
@@ -103,14 +103,14 @@
                  </sequence>
          
                 </testcase> 
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/clu_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'clu_cleanup'"> { 'stopDS' : True } </call>
        </sequence>
    
      </block>
opends/tests/functional-tests/testcases/clu/cluDelete.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='clu'
              CurrentTestPath['group']='clu'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -61,8 +61,8 @@
            file="'%s/testcases/clu/clu_setup.xml' % (TESTS_DIR)"/>
          <call function="'clu_setup'"> 
            { 'startDS' : True,
              'loadBackend' : True }
          </call>
        'loadBackend' : True }
          </call>
          
         
          <!--- Test Case information
@@ -103,14 +103,14 @@
                  </sequence>
          
                 </testcase> 
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/clu_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'clu_cleanup'"> { 'stopDS' : True } </call>
        </sequence>
    
      </block>
opends/tests/functional-tests/testcases/clu/cluModify.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='clu'
              CurrentTestPath['group']='clu'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -61,8 +61,8 @@
            file="'%s/testcases/clu/clu_setup.xml' % (TESTS_DIR)"/>
          <call function="'clu_setup'"> 
            { 'startDS' : True,
              'loadBackend' : True }
          </call>
        'loadBackend' : True }
          </call>
          
         
          <!--- Test Case information
@@ -142,7 +142,7 @@
          
                  </sequence>
          
                 </testcase>
                 </testcase>
         
          <!--- Test Case information
            #@TestMarker          Clu Ldap Modify Tests
@@ -849,7 +849,7 @@
            file="'%s/testcases/clu/clu_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'clu_cleanup'"> { 'stopDS' : True } </call>
        </sequence>
    
      </block>
opends/tests/functional-tests/testcases/clu/cluSearch.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='clu'
              CurrentTestPath['group']='clu'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -61,8 +61,8 @@
            file="'%s/testcases/clu/clu_setup.xml' % (TESTS_DIR)"/>
          <call function="'clu_setup'"> 
            { 'startDS' : True,
              'loadBackend' : True }
          </call>
        'loadBackend' : True }
          </call>
         
          <!--- Test Case information
            #@TestMarker          Clu Ldap Search Tests
@@ -101,7 +101,7 @@
                  </sequence>
          
                 </testcase> 
          <!--- Test Case information
            #@TestMarker          Clu Ldap Search Tests
            #@TestName            Clu: Ldap Search: Test Case #2 
@@ -1129,7 +1129,7 @@
            file="'%s/testcases/clu/clu_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'clu_cleanup'"> { 'stopDS' : True } </call>
        </sequence>
    
      </block>
opends/tests/functional-tests/testcases/clu/clu_cleanup.xml
@@ -37,7 +37,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>    
    </function-map-args>
  </function-map-args>
    <sequence>
@@ -45,10 +45,10 @@
      
        <sequence>
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -66,33 +66,33 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          </if>
      </if>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/clu/clu_setup.xml
@@ -36,34 +36,34 @@
      <block name="'setup'">
      
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
              
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -82,17 +82,17 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
          <block name="'Block DS Load Data'">
          <!-- Load the data needed by the test suite -->
      <sequence>
      <!-- Load the data needed by the test suite -->
    <sequence>
              <message>
                 'Add many entries needed for Testcase 18 in cluSearch tests'
              </message> 
@@ -121,13 +121,13 @@
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      </sequence>
          <!-- End Block DS Load Data -->
    </sequence>
          <!-- End Block DS Load Data -->
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/clu/clu_setup_sav.xml
@@ -37,49 +37,49 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>  
      <function-arg-def name="loadBackend" type="optional" default="False">
        <function-arg-description>
          Specifies whether the backend should be loaded with some data.
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
    </function-map-args>
    <function-arg-def name="loadBackend" type="optional" default="False">
      <function-arg-description>
      Specifies whether the backend should be loaded with some data.
    </function-arg-description>
    <function-arg-property name="type" value="boolean"/>
    </function-arg-def>
  </function-map-args>
    <sequence>
      <block name="'setup'">
      
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <if expr="loadBackend == True">
          <block name="'Block DS Load Data'">
          <!-- Load the data needed by the test suite -->
            <sequence>
      <block name="'Block DS Load Data'">
      <!-- Load the data needed by the test suite -->
        <sequence>
              <message>
                'Clu: Clu Setup for cluSearch, cluModify, cluDelete, and cluCompare Tests'
              </message>
@@ -91,19 +91,19 @@
              <call function="'checkRC'">
                { 'returncode' : RC ,
                  'result'     : STAXResult }
              </call>
              </call>
            </sequence>      
          <!--- End Block DS Load Data -->
          </block>
          </if>
          <if expr="startDS == True">
          <block name="'Block DS Process Active'">
          <!--- End Block DS Load Data -->
      </block>
      </if>
      <if expr="startDS == True">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -122,16 +122,16 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
            
          <!--- End Block DS Process Active -->
          </block>
          </if>
          </block>
      </if>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/clu/commands.xml
@@ -42,23 +42,23 @@
          </script>
      
          <call function="'testGroup_Preamble'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/cluSearch.xml' % (TESTS_DIR)"/>
          <call function="'main_cluSearch'" />
       <!--   <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/cluModify.xml' % (TESTS_DIR)"/>
          <call function="'main_cluModify'" /> -->
          <!-- <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/cluCompare.xml' % (TESTS_DIR)"/>
          <call function="'main_cluCompare'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/clu/cluDelete.xml' % (TESTS_DIR)"/>
          <call function="'main_cluDelete'" /> -->
          <call function="'testGroup_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/core/core_entry_cache.xml
@@ -54,7 +54,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'cn=version,cn=monitor',
                  'dsFilter'       : '|' ,
                  'extraParams'    : ''
                  'extraParams'     : ''
                }
              </call>
              <call function="'checktestRC'">
@@ -194,7 +194,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'ou=People,o=core tests,dc=example,dc=com',
                  'dsFilter'       : 'objectclass=*',
                  'extraParams'    : ''
                  'extraParams'     : ''
                }
              </call>
              <call function="'checktestRC'">
opends/tests/functional-tests/testcases/core/core_search_sizelimit.xml
@@ -54,7 +54,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'ou=People,o=core tests,dc=example,dc=com',
                  'dsFilter'       : 'objectclass=*',
                  'extraParams'    : '-z 150',
                  'extraParams'     : '-z 150',
                  'expectedRC'     : 4
                }
              </call>
@@ -76,7 +76,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'ou=People,o=core tests,dc=example,dc=com',
                  'dsFilter'       : 'objectclass=*',
                  'extraParams'    : '-z 151'
                  'extraParams'     : '-z 151'
                }
              </call>
              <call function="'checktestRC'">
opends/tests/functional-tests/testcases/core/core_search_timelimit.xml
@@ -75,7 +75,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'o=core tests,dc=example,dc=com',
                  'dsFilter'       : 'objectclass=*',
                  'extraParams'    : '-l 1',
                  'extraParams'     : '-l 1',
                  'expectedRC'     : 3
                }
              </call>
@@ -97,7 +97,7 @@
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
                  'dsBaseDN'       : 'o=core tests,dc=example,dc=com',
                  'dsFilter'       : 'objectclass=*',
                  'extraParams'    : '-l 500'
                  'extraParams'     : '-l 500'
                }
              </call>
              <call function="'checktestRC'">
opends/tests/functional-tests/testcases/core/core_setup.xml
@@ -46,10 +46,10 @@
                }
              </call>
            </sequence>
            <!--- End Block Create DS Topology -->
            <!--- End Block Create DS Topology -->
          </block>
          
          <block name="'Block DS Process Active'">
          <block name="'Block DS Process Active'">
            <!--- Start DS -->
            <sequence>
              <message>
@@ -75,7 +75,7 @@
          </block>
          
          <block name="'Block DS Load Data'">
            <!-- Load the data needed by the test suite -->
            <!-- Load the data needed by the test suite -->
            <sequence>
              <message>
                'Add entries that are required for the Core Tests'
opends/tests/functional-tests/testcases/dsconfig/dsconfig_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,32 +58,32 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/dsconfig/dsconfig_get.xml
@@ -39,7 +39,7 @@
  
        <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
        </script>
      
@@ -49,7 +49,7 @@
            file="'%s/testcases/dsconfig/dsconfig_setup.xml' % (TESTS_DIR)"/>
        <call function="'dsconfig_setup'" />
        <script>
            componentList = []
         
@@ -117,7 +117,7 @@
            file="'%s/testcases/dsconfig/dsconfig_cleanup.xml' % (TESTS_DIR)"/>
        <call function="'dsconfig_cleanup'" />
        <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/dsconfig/dsconfig_list.xml
@@ -39,7 +39,7 @@
  
        <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='aci'
              CurrentTestPath['group']='aci'
            CurrentTestPath['suite']=STAXCurrentBlock
        </script>
      
@@ -49,7 +49,7 @@
            file="'%s/testcases/dsconfig/dsconfig_setup.xml' % (TESTS_DIR)"/>
        <call function="'dsconfig_setup'" />
        <script>
            componentList = []
         
@@ -111,7 +111,7 @@
            file="'%s/testcases/dsconfig/dsconfig_cleanup.xml' % (TESTS_DIR)"/>
        <call function="'dsconfig_cleanup'" />
        <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/dsconfig/dsconfig_setup.xml
@@ -40,34 +40,34 @@
          <script>
            CurrentTestPath['group']='dsconfig'
          </script>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -86,13 +86,13 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/groups/group_cleanup.xml
@@ -37,7 +37,7 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>    
    </function-map-args>
  </function-map-args>
    <sequence>
@@ -45,10 +45,10 @@
      
        <sequence>
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 '------ Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -66,33 +66,33 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          </if>
      </if>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 '------ Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/groups/group_dynamic.xml
@@ -63,7 +63,7 @@
 
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='groups'
              CurrentTestPath['group']='groups'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
                      
@@ -371,8 +371,8 @@
                'dsInstanceDn'      : applicationDn ,
                'dsInstancePswd'    : applicationPswd ,
                'DNToModify'        : user2AddDn ,
                'newRDN'                    : user2AddRenamed,
                'deleteOldRDN'          : 1 }
                'newRDN'             : user2AddRenamed,
                'deleteOldRDN'       : 1 }
              </call>
-->
              <!-- ******************** -->
@@ -448,7 +448,7 @@
                'dsBaseDN'         : user2AddDn ,
                'dsFilter'         : 'objectclass=*'  ,
                'dsAttributes'     : 'dn',
                'expectedRC'         : 32 }
                'expectedRC'       : 32 }
              </call>
              <!-- ******************** -->
              <message>
opends/tests/functional-tests/testcases/groups/group_setup.xml
@@ -38,42 +38,42 @@
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>  
        <function-arg-def name="loadBackend" type="optional" default="True">
            <function-arg-description>
                  Specifies whether the backend should be loaded with some data.
                </function-arg-description>
                <function-arg-property name="type" value="boolean"/>
          </function-arg-def>
        </function-map-args>
      <function-arg-def name="loadBackend" type="optional" default="True">
        <function-arg-description>
          Specifies whether the backend should be loaded with some data.
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
    </function-map-args>
    <sequence>
  
      <block name="'setup'">
        <sequence>
          <block name="'Block Create DS Topology'">
            <!-- Create the topology necessary to the test group/suite -->
                <sequence>
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
              <message>
                 '------ Create DS topology as described in config.py'
              </message>
                    <call function="'createTopology'">
                        { 'initialiseInstance' : False }
                    </call>
                    <call function="'checkRC'">
              <call function="'createTopology'">
                  { 'initialiseInstance' : False }
              </call>
              <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
              
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <if expr="loadBackend == True">
            <block name="'Block DS Load Data'">
                <!-- Load the data needed by the test suite -->
                    <sequence>
            <!-- Load the data needed by the test suite -->
              <sequence>
                <message>
                  '------ Load LDIF : groups.ldif'
                </message>
@@ -83,22 +83,22 @@
                <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                </call>
                </call>
              </sequence>      
            <!--- End Block DS Load Data -->
                  </block>
            </if>
            <!--- End Block DS Load Data -->
            </block>
          </if>
          
              <if expr="startDS == True">
                <block name="'Block DS Process Active'">
                <!--- Start DS -->
                    <sequence>
          <if expr="startDS == True">
            <block name="'Block DS Process Active'">
             <!--- Start DS -->
              <sequence>
                <message>
                   '------ Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
                </message>
                <!--- Start DS -->
                <call function="'StartDsWithScript'">
                        { 'location'  : STAF_REMOTE_HOSTNAME }
                    { 'location'  : STAF_REMOTE_HOSTNAME }
                </call>
                <call function="'checkRC'">
                    { 'returncode' : RC ,
@@ -106,16 +106,16 @@
                </call>
                <!--- Check that DS started -->
                <call function="'isAlive'">
                      { 'noOfLoops'        : 5 ,
                      'noOfMilliSeconds' : 2000 }
                </call>
                </sequence>
            <!--- End Block DS Process Active -->
              </block>
              </if>
            </sequence>
                    { 'noOfLoops'        : 5 ,
                      'noOfMilliSeconds' : 2000 }
                </call>
              </sequence>
            <!--- End Block DS Process Active -->
            </block>
          </if>
        </sequence>
      </block>
    </sequence>
    </function>
  </function>
</stax>
opends/tests/functional-tests/testcases/groups/group_static_member.xml
@@ -59,7 +59,7 @@
 
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='groups'
              CurrentTestPath['group']='groups'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
                      
opends/tests/functional-tests/testcases/groups/group_static_uniquemember.xml
@@ -59,7 +59,7 @@
 
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='groups'
              CurrentTestPath['group']='groups'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
                      
@@ -184,7 +184,7 @@
                'dsBaseDN'         : newStaticGroupDn ,
                'dsFilter'         : 'objectclass=*'  ,
                'dsAttributes'     : 'uniquemember',
                'expectedRC'         : 32 }
                'expectedRC'       : 32 }
              </call>
              <call function="'CheckIsMemberOf'">
                { 'baseDn'      : user11Dn ,
opends/tests/functional-tests/testcases/groups/group_virtual_static.xml
@@ -55,7 +55,7 @@
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='groups'
              CurrentTestPath['group']='groups'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
                      
@@ -377,8 +377,8 @@
                'dsInstanceDn'      : applicationDn ,
                'dsInstancePswd'    : applicationPswd ,
                'DNToModify'        : user2AddDn ,
                'newRDN'                    : user2AddRenamed,
                'deleteOldRDN'          : 1 }
                'newRDN'             : user2AddRenamed,
                'deleteOldRDN'       : 1 }
              </call>
-->  
              <!-- ******************** -->
opends/tests/functional-tests/testcases/indexes/indexes.xml
@@ -465,7 +465,7 @@
                  'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD                            ,
                  'dsBaseDN'         : 'ou=People,dc=example,%s' % DIRECTORY_INSTANCE_SFX ,
                  'dsFilter'         : '%s' % test.getFilter()                            ,
                  'attributes'       : 'debugsearchindex'                                 ,
                  'attributes'       : 'debugsearchindex'                                 ,
                  'expectedRC'       : 'noCheck'                                          }
              </call>
              <script>
opends/tests/functional-tests/testcases/logging/logging.xml
@@ -38,12 +38,12 @@
         <sequence>
  
          <script>
            CurrentTestPath['group']='logging'
      CurrentTestPath['group']='logging'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          <call function="'testSuite_Preamble'"/>
          <import machine="'%s' % (STAF_LOCAL_HOSTNAME)"
            file="'%s/testcases/logging/logging_setup.xml' % (TESTS_DIR)"/>
          <call function="'logging_setup'"/>         
@@ -51,23 +51,23 @@
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_rotation.xml' % (TESTS_DIR)"/>
          <call function="'logging_rotation'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_properties.xml' % (TESTS_DIR)"/>
          <call function="'logging_properties'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_writer.xml' % (TESTS_DIR)"/>
          <call function="'logging_writer'" />
          <call function="'logging_writer'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_retention.xml' % (TESTS_DIR)"/>
          <call function="'logging_retention'" />
          <import machine="'%s' % (STAF_LOCAL_HOSTNAME)"
            file="'%s/testcases/logging/logging_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'logging_cleanup'"/>
          <call function="'logging_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        </sequence>
opends/tests/functional-tests/testcases/logging/logging_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,32 +58,32 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/logging/logging_properties.xml
@@ -34,65 +34,65 @@
                               
       <!--- Test Case : access logger -->
       <!---
    #@TestMarker             access logger
    #@TestName               access logger properties check
    #@TestIssue
    #@TestPurpose           check the access logger properties.
    #@TestPreamble           none
    #@TestStep                 Check the  Access Logger's properties are correctly set and get using dsconfig
    #@TestStep                 Set a property
  #@TestMarker             access logger
  #@TestName               access logger properties check
  #@TestIssue
  #@TestPurpose           check the access logger properties.
  #@TestPreamble           none
  #@TestStep                 Check the  Access Logger's properties are correctly set and get using dsconfig
  #@TestStep                 Set a property
    #@TestStep                 Get the property and check it has been correctly updated
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="'logging : properties checks:  Access logger '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the Access logger s properties  -----'
    </message>
    </message>
    <!--   create a logger  publisher-->
    <message>'------  create logger publisher --' </message>
       <!-- DESACTRIVATED : bug 2107]-->
       <call function="'testFailed'"/>
       <script>
           bug=2107
       </script>
       <if expr="bug == 0">
           <sequence>
  <!--   create a logger  publisher-->
  <message>'------  create logger publisher --' </message>
     <!-- DESACTRIVATED : bug 2107]-->
     <call function="'testFailed'"/>
     <script>
       bug=2107
       </script>
     <if expr="bug == 0">
       <sequence>
        <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-publisher' ,
        'subcommand'           : 'create-log-publisher' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--type file-based-access --set asynchronous:false --set log-file-mode:555 --set log-file:logs/access --set enabled:true ',
        'expectedRC'             : 0 } 
         </call>
             </sequence>
        </if>
    <!--   auto-flush  -->
    <message>'------  set auto-flush to true --' </message>
         </call>
       </sequence>
      </if>
  <!--   auto-flush  -->
  <message>'------  set auto-flush to true --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Access Logger',
        'optionsString'           : '--set auto-flush:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get auto-flush --' </message>
  <message>'------  get auto-flush --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -103,22 +103,22 @@
        'propertyName'           :  'File-Based Access Logger',
        'attributeName'          : 'auto-flush',
        'expectedAttributeValue'         : 'true'  }
    </call>
    </call>
    <!--   append  -->
    <message>'------  set append  to false  --' </message>
  <!--   append  -->
  <message>'------  set append  to false  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set append:false',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get append --' </message>
    </call>
  <message>'------  get append --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -129,22 +129,22 @@
        'propertyName'           :  'File-Based Access Logger',
        'attributeName'          : 'append',
        'expectedAttributeValue'         : 'false'  }
    </call>
    <!--   asynchronous  -->
    <message>'------  set asynchronous  to true  --' </message>
    </call>
  <!--   asynchronous  -->
  <message>'------  set asynchronous  to true  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set asynchronous:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get asynchronous --' </message>
    </call>
  <message>'------  get asynchronous --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -155,22 +155,22 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'asynchronous',
        'expectedAttributeValue'         : 'true'  }
    </call>
    <!--   buffer-size  -->
    <message>'------  set buffer-size  to 10mb  --' </message>
    </call>
  <!--   buffer-size  -->
  <message>'------  set buffer-size  to 10mb  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set buffer-size:10mb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get buffer-size --' </message>
    </call>
  <message>'------  get buffer-size --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -181,22 +181,22 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'buffer-size',
        'expectedAttributeValue'         : '10 mb'  }
    </call>
    <!--   time-interval  -->
    <message>'------  set time-interval  to 3m  --' </message>
    </call>
  <!--   time-interval  -->
  <message>'------  set time-interval  to 3m  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set time-interval:3m',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get time-interval --' </message>
    </call>
  <message>'------  get time-interval --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -206,24 +206,24 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'time-interval',
        'extraParams'             : '-M s',
    'extraParams'             : '-M s',
        'expectedAttributeValue'         : '180 s'  }
    </call>
    <!--   log-file  -->
    <message>'------  set log-file  to logs/testaccess  --' </message>
    </call>
  <!--   log-file  -->
  <message>'------  set log-file  to logs/testaccess  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file:logs/testaccess',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get log-file --' </message>
    </call>
  <message>'------  get log-file --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -234,35 +234,35 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'log-file',
        'expectedAttributeValue'         : 'logs/testaccess'  }
    </call>
    <!--   log-file  -->
    <message>'------  set log-file  to logs/access  --' </message>
    </call>
  <!--   log-file  -->
  <message>'------  set log-file  to logs/access  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file:logs/access',
        'expectedRC'             : 0 } 
    </call>
    <!--   log-file-mode  -->
    <message>'------  set log-file-mode  to 777  --' </message>
    </call>
  <!--   log-file-mode  -->
  <message>'------  set log-file-mode  to 777  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file-mode:777',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get log-file-mode --' </message>
    </call>
  <message>'------  get log-file-mode --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -273,22 +273,22 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'log-file-mode',
        'expectedAttributeValue'         : '777'  }
    </call>
    </call>
    <!--   queue-size  -->
    <message>'------  set queue-size  to 1000  --' </message>
  <!--   queue-size  -->
  <message>'------  set queue-size  to 1000  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set queue-size:1000',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get queue-size --' </message>
    </call>
  <message>'------  get queue-size --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -299,22 +299,22 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'queue-size',
        'expectedAttributeValue'         : '1000'  }
    </call>
    <!--   suppress-synchronization-operations  -->
    <message>'------  set suppress-synchronization-operations  to 1000  --' </message>
    </call>
  <!--   suppress-synchronization-operations  -->
  <message>'------  set suppress-synchronization-operations  to 1000  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set suppress-synchronization-operations:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get suppress-synchronization-operations --' </message>
    </call>
  <message>'------  get suppress-synchronization-operations --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -325,23 +325,23 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'suppress-synchronization-operations',
        'expectedAttributeValue'         : 'true'  }
    </call>
    </call>
    <!--   suppress-internal-operations  -->
    <message>'------  set suppress-internal-operations  to false  --' </message>
  <!--   suppress-internal-operations  -->
  <message>'------  set suppress-internal-operations  to false  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set suppress-internal-operations:false',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get suppress-synchronization-operations --' </message>
    </call>
  <message>'------  get suppress-synchronization-operations --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -352,65 +352,65 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'suppress-internal-operations',
        'expectedAttributeValue'         : 'false'  }
    </call>
    <!--   delete  a logger  publisher-->
       <if expr="bug == 0">
           <sequence>
         <message>'------  delete logger publisher --' </message>
    </call>
  <!--   delete  a logger  publisher-->
     <if expr="bug == 0">
       <sequence>
       <message>'------  delete logger publisher --' </message>
        <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-publisher' ,
        'subcommand'           : 'delete-log-publisher' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'expectedRC'             : 0 } 
        </call>
            </sequence>
       </if>
        </call>
      </sequence>
     </if>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
       <!--- Test Case : Error logger -->
       <!---
    #@TestMarker             error logger
    #@TestName               error logger properties check
    #@TestIssue
    #@TestPurpose           check the error logger properties.
    #@TestPreamble           none
    #@TestStep                 Check the  error Logger's properties are correctly set and get using dsconfig
    #@TestStep                 Set a property
  #@TestMarker             error logger
  #@TestName               error logger properties check
  #@TestIssue
  #@TestPurpose           check the error logger properties.
  #@TestPreamble           none
  #@TestStep                 Check the  error Logger's properties are correctly set and get using dsconfig
  #@TestStep                 Set a property
    #@TestStep                 Get the property and check it has been correctly updated
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
  <testcase name="'logging : properties checks:  Error logger '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the Error logger s properties  -----'
    </message>
    </message>
    <!--    default-severity  -->
    <message>'------  set default-severity to mild-error --' </message>
  <!--    default-severity  -->
  <message>'------  set default-severity to mild-error --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Error Logger',
        'optionsString'           : '--set default-severity:mild-error',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-severity --' </message>
  <message>'------  get default-severity --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -421,22 +421,22 @@
        'propertyName'           :  'File-Based Error Logger',
        'attributeName'          : 'default-severity',
        'expectedAttributeValue'         : 'mild-error'  }
    </call>
    </call>
    <!--  override-severity -->
    <message>'------  set override-severity    --' </message>
  <!--  override-severity -->
  <message>'------  set override-severity    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Error Logger',
        'optionsString'           : '--set "override-severity:request=info,schema"',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get override-severity --' </message>
    </call>
  <message>'------  get override-severity --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -447,8 +447,8 @@
        'propertyName'           :  'File-Based Error Logger',
        'attributeName'          : 'override-severity',
        'expectedAttributeValue'         : 'request=info,schema'  }
    </call>
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
@@ -456,40 +456,40 @@
       <!--- Test Case : Debug logger -->
       <!---
    #@TestMarker             Debug logger
    #@TestName               Debug logger properties check
    #@TestIssue
    #@TestPurpose           check the Debug logger properties.
    #@TestPreamble           none
    #@TestStep                 Check the  Debug Logger's properties are correctly set and get using dsconfig
    #@TestStep                 Set a property
  #@TestMarker             Debug logger
  #@TestName               Debug logger properties check
  #@TestIssue
  #@TestPurpose           check the Debug logger properties.
  #@TestPreamble           none
  #@TestStep                 Check the  Debug Logger's properties are correctly set and get using dsconfig
  #@TestStep                 Set a property
    #@TestStep                 Get the property and check it has been correctly updated
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
  <testcase name="'logging : properties checks:  Debug logger '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the Debug loggers properties  -----'
    </message>
    <!--    default-debug-category  -->
    <message>'------  set default-debug-category  --' </message>
    </message>
  <!--    default-debug-category  -->
  <message>'------  set default-debug-category  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Debug Logger',
        'optionsString'           : '--set default-debug-category:thrown',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-debug-category --' </message>
  <message>'------  get default-debug-category --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -500,22 +500,22 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-debug-category',
        'expectedAttributeValue'         : 'thrown'  }
    </call>
    </call>
    <!--  default-debug-level -->
    <message>'------  set default-debug-level    --' </message>
  <!--  default-debug-level -->
  <message>'------  set default-debug-level    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-debug-level:verbose',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-debug-level --' </message>
    </call>
  <message>'------  get default-debug-level --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -526,23 +526,23 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-debug-level',
        'expectedAttributeValue'         : 'verbose'  }
    </call>
    </call>
    <!--  default-include-throwable-cause -->
    <message>'------  set default-include-throwable-cause    --' </message>
  <!--  default-include-throwable-cause -->
  <message>'------  set default-include-throwable-cause    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-include-throwable-cause:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-include-throwable-cause --' </message>
    </call>
  <message>'------  get default-include-throwable-cause --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -553,23 +553,23 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-include-throwable-cause',
        'expectedAttributeValue'         : 'true'  }
    </call>
    </call>
    <!--  default-omit-method-entry-arguments -->
    <message>'------  set default-omit-method-entry-arguments    --' </message>
  <!--  default-omit-method-entry-arguments -->
  <message>'------  set default-omit-method-entry-arguments    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-omit-method-entry-arguments:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-omit-method-entry-arguments --' </message>
    </call>
  <message>'------  get default-omit-method-entry-arguments --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -580,23 +580,23 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-omit-method-entry-arguments',
        'expectedAttributeValue'         : 'true'  }
    </call>
    </call>
    <!--  default-omit-method-return-value -->
    <message>'------  set default-include-throwable-cause    --' </message>
  <!--  default-omit-method-return-value -->
  <message>'------  set default-include-throwable-cause    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-omit-method-return-value:true',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-omit-method-return-value --' </message>
    </call>
  <message>'------  get default-omit-method-return-value --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -607,23 +607,23 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-omit-method-return-value',
        'expectedAttributeValue'         : 'true'  }
    </call>
    </call>
    <!--  default-throwable-stack-frames -->
    <message>'------  set default-throwable-stack-frames    --' </message>
  <!--  default-throwable-stack-frames -->
  <message>'------  set default-throwable-stack-frames    --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-throwable-stack-frames:2',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get default-throwable-stack-frames --' </message>
    </call>
  <message>'------  get default-throwable-stack-frames --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -634,51 +634,51 @@
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-throwable-stack-frames',
        'expectedAttributeValue'         : '2'  }
    </call>
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
 </testcase>
                            
       <!--- Test Case : Rotation policy -->
       <!---
    #@TestMarker             Rotation policy
    #@TestName               Check dsconfig properties of Rotation policy
    #@TestIssue
    #@TestPurpose           check the rotation policy properties.
    #@TestPreamble         none
    #@TestStep                 Check the rotation policy's properties are correctly set and get using dsconfig
    #@TestStep                 Set a property
  #@TestMarker             Rotation policy
  #@TestName               Check dsconfig properties of Rotation policy
  #@TestIssue
  #@TestPurpose           check the rotation policy properties.
  #@TestPreamble         none
  #@TestStep                 Check the rotation policy's properties are correctly set and get using dsconfig
  #@TestStep                 Set a property
    #@TestStep                 Get the property and check it has been correctly updated
    #@TestPostamble         none
    #@TestResult               Success if OpenDS returns 0 for all operations
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="'logging : properties checks:  Rotation policy '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the Rotation policy properties  -----'
    </message>
    <!-- create-log-rotation-policy  with the type size-limit -->
    <message>'------  create a size limit rotation policy --' </message>
    </message>
  <!-- create-log-rotation-policy  with the type size-limit -->
  <message>'------  create a size limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size rotation policy',
        'optionsString'           : '--type size-limit --set file-size-limit:5mb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get file-size-limit --' </message>
  <message>'------  get file-size-limit --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -689,22 +689,22 @@
        'propertyName'           : 'my size rotation policy',
        'attributeName'          : 'file-size-limit',
        'expectedAttributeValue'         : '5 mb'  }
    </call>
    </call>
    <!--   set file-size-limit  -->
    <message>'------  set file-size-limit  to 6kb  --' </message>
  <!--   set file-size-limit  -->
  <message>'------  set file-size-limit  to 6kb  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my size rotation policy',
        'optionsString'           : '--set file-size-limit:5kb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get file-size-limit --' </message>
    </call>
  <message>'------  get file-size-limit --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -715,36 +715,36 @@
        'propertyName'           : 'my size rotation policy',
        'attributeName'          : 'file-size-limit',
        'expectedAttributeValue'         : '5 kb'  }
    </call>
    <message>'------  delete a size limit rotation policy --' </message>
    </call>
  <message>'------  delete a size limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size rotation policy',
        'expectedRC'             : 0 } 
    </call>  
    <!-- ################################-->
    <!-- create-log-rotation-policy  with the type time-limit -->
    <message>'------  create a time limit rotation policy --' </message>
  <!-- ################################-->
  <!-- create-log-rotation-policy  with the type time-limit -->
  <message>'------  create a time limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my time rotation policy',
        'optionsString'           : '--type time-limit --set rotation-interval:3d',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get rotation-interval --' </message>
  <message>'------  get rotation-interval --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -754,24 +754,24 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my time rotation policy',
        'attributeName'          : 'rotation-interval',
        'extraParams'            : '-M d',
        'extraParams'         : '-M d',
        'expectedAttributeValue'         : '3 d'  }
    </call>
    </call>
    <!--   set rotation-interval  -->
    <message>'------  set rotation-interval  to 3s  --' </message>
  <!--   set rotation-interval  -->
  <message>'------  set rotation-interval  to 3s  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my time rotation policy',
        'optionsString'           : '--set rotation-interval:3s',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get rotation-interval --' </message>
    </call>
  <message>'------  get rotation-interval --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -781,38 +781,38 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my time rotation policy',
        'attributeName'          : 'rotation-interval',
        'extraParams'            : '-M s',
        'extraParams'         : '-M s',
        'expectedAttributeValue'         : '3 s'  }
    </call>
    </call>
    <message>'------  delete a time limit rotation policy --' </message>
  <message>'------  delete a time limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my time rotation policy',
        'expectedRC'             : 0 } 
    </call>
    <!-- ################################-->
    <!-- create-log-rotation-policy  with the type fixed-time -->
    <message>'------  create a fixed time limit rotation policy --' </message>
  <!-- ################################-->
  <!-- create-log-rotation-policy  with the type fixed-time -->
  <message>'------  create a fixed time limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'subcommand'           : 'create-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my fixedtime rotation policy',
        'optionsString'           : '--type fixed-time --set time-of-day:1203',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get time-of-day --' </message>
  <message>'------  get time-of-day --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -823,22 +823,22 @@
        'propertyName'           :  'my fixedtime rotation policy',
        'attributeName'          : 'time-of-day',
        'expectedAttributeValue'         : '1203'  }
    </call>
    </call>
    <!--   set time-of-day  -->
    <message>'------  set time-of-day  to 3s  --' </message>
  <!--   set time-of-day  -->
  <message>'------  set time-of-day  to 3s  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my fixedtime rotation policy',
        'optionsString'           : '--set time-of-day:0934',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get time-of-day --' </message>
    </call>
  <message>'------  get time-of-day --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -849,21 +849,21 @@
        'propertyName'           :  'my fixedtime rotation policy',
        'attributeName'          : 'time-of-day',
        'expectedAttributeValue'         : '0934'  }
    </call>
    </call>
    <!-- delete-log-rotation-policy  with the type fixed-time -->
    <message>'------  delete a fixed time limit rotation policy --' </message>
  <!-- delete-log-rotation-policy  with the type fixed-time -->
  <message>'------  delete a fixed time limit rotation policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'subcommand'           : 'delete-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my fixedtime rotation policy',
        'expectedRC'             : 0 } 
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
@@ -872,44 +872,44 @@
                      
       <!--- Test Case : Retention policy -->
       <!---
    #@TestMarker             retention policy
    #@TestName               Check dsconfig properties of retention policy
    #@TestIssue
    #@TestPurpose           check the retention policy properties.
    #@TestPreamble         none
    #@TestStep                 Check the retention policy's properties are correctly set and get using dsconfig
    #@TestStep                 Set a property
  #@TestMarker             retention policy
  #@TestName               Check dsconfig properties of retention policy
  #@TestIssue
  #@TestPurpose           check the retention policy properties.
  #@TestPreamble         none
  #@TestStep                 Check the retention policy's properties are correctly set and get using dsconfig
  #@TestStep                 Set a property
    #@TestStep                 Get the property and check it has been correctly updated
    #@TestPostamble         none
    #@TestResult               Success if OpenDS returns 0 for all operations
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="'logging : properties checks:  retention policy '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the retention policy properties  -----'
    </message>
    <!-- create-log-retention-policy  with the type size-limit -->
    <message>'------  create a size limit retention policy --' </message>
    </message>
  <!-- create-log-retention-policy  with the type size-limit -->
  <message>'------  create a size limit retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-retention-policy' ,
        'subcommand'           : 'create-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size retention policy',
        'optionsString'           : '--type size-limit --set disk-space-used:5mb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get file-size-limit --' </message>
  <message>'------  get file-size-limit --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -920,22 +920,22 @@
        'propertyName'           : 'my size retention policy',
        'attributeName'          : 'disk-space-used',
        'expectedAttributeValue'         : '5 mb'  }
    </call>
    </call>
    <!--   set disk-space-used  -->
    <message>'------  set file-size-limit  to 5kb  --' </message>
  <!--   set disk-space-used  -->
  <message>'------  set file-size-limit  to 5kb  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my size retention policy',
        'optionsString'           : '--set disk-space-used:5kb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get disk-space-used --' </message>
    </call>
  <message>'------  get disk-space-used --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -946,36 +946,36 @@
        'propertyName'           : 'my size retention policy',
        'attributeName'          : 'disk-space-used',
        'expectedAttributeValue'         : '5 kb'  }
    </call>
    <message>'------  delete a size limit retention policy --' </message>
    </call>
  <message>'------  delete a size limit retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size retention policy',
        'expectedRC'             : 0 } 
    </call>  
    <!-- ################################-->
    <!-- create-log-retention-policy  with the type  free-disk-space -->
    <message>'------  create a free-disk-space limit retention policy --' </message>
  <!-- ################################-->
  <!-- create-log-retention-policy  with the type  free-disk-space -->
  <message>'------  create a free-disk-space limit retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-retention-policy' ,
        'subcommand'           : 'create-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my free-disk-space retention policy',
        'optionsString'           : '--type free-disk-space --set free-disk-space:6Gb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get free_disk-space --' </message>
  <message>'------  get free_disk-space --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -986,22 +986,22 @@
        'propertyName'           : 'my free-disk-space retention policy',
        'attributeName'          : 'free-disk-space',
        'expectedAttributeValue'         : '6 gb'  }
    </call>
    </call>
    <!--   set free_disk-space  -->
    <message>'------  set free_disk-space  to 4mb --' </message>
  <!--   set free_disk-space  -->
  <message>'------  set free_disk-space  to 4mb --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my free-disk-space retention policy',
        'optionsString'           : '--set free-disk-space:4mb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get free_disk-space --' </message>
    </call>
  <message>'------  get free_disk-space --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1012,36 +1012,36 @@
        'propertyName'           : 'my free-disk-space retention policy',
        'attributeName'          : 'free-disk-space',
        'expectedAttributeValue'         : '4 mb'  }
    </call>
    </call>
    <message>'------  delete a free-disk-space retention policy --' </message>
  <message>'------  delete a free-disk-space retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my free-disk-space retention policy',
        'expectedRC'             : 0 } 
    </call>
    <!-- ################################-->
    <!-- create-log-retention-policy  with the type  file-count -->
    <message>'------  create a fixed time limit retention policy --' </message>
  <!-- ################################-->
  <!-- create-log-retention-policy  with the type  file-count -->
  <message>'------  create a fixed time limit retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'create-log-retention-policy' ,
        'subcommand'           : 'create-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my filecount retention policy',
        'optionsString'           : '--type file-count --set number-of-files:10',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get number-of-files --' </message>
  <message>'------  get number-of-files --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1052,22 +1052,22 @@
        'propertyName'           :  'my filecount retention policy',
        'attributeName'          : 'number-of-files',
        'expectedAttributeValue'         : '10'  }
    </call>
    </call>
    <!--   set number-of-files  -->
    <message>'------  set number-of-files  to 32  --' </message>
  <!--   set number-of-files  -->
  <message>'------  set number-of-files  to 32  --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'subcommand'           : 'set-log-retention-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my filecount retention policy',
        'optionsString'           : '--set number-of-files:32',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  get number-of-files --' </message>
    </call>
  <message>'------  get number-of-files --' </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1078,27 +1078,27 @@
        'propertyName'           :  'my filecount retention policy',
        'attributeName'          : 'number-of-files',
        'expectedAttributeValue'         : '32'  }
    </call>
    </call>
    <!-- delete-log-retention-policy  with the type file-count -->
    <message>'------  delete a fixed file-count  retention policy --' </message>
  <!-- delete-log-retention-policy  with the type file-count -->
  <message>'------  delete a fixed file-count  retention policy --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'subcommand'           : 'delete-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my filecount retention policy',
        'expectedRC'             : 0 } 
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
 </testcase>
</sequence>
</function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_retention.xml
@@ -50,27 +50,27 @@
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the file count  -----'
    </message>
    <!-- set the max number of files to keep -->
    <script>
        numberFiles=5
        maxFiles=6
    </script>
    </message>
  <!-- set the max number of files to keep -->
  <script>
    numberFiles=5
    maxFiles=6
    </script>
<call function="'ldapSearchWithScript'">
            { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
               'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
               'dsBaseDN'       : DIRECTORY_INSTANCE_SFX,
               'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
               'dsInstancePswd'   :      DIRECTORY_INSTANCE_PSWD,
               'dsFilter'       : 'objectclass=*',
               'dsScope'            : 'base',
               'expectedRC'      :  0 }
             </call>
      { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
         'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
             'dsBaseDN'    : DIRECTORY_INSTANCE_SFX,
         'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
             'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
         'dsFilter'    : 'objectclass=*',
             'dsScope'        : 'base',
             'expectedRC'     :  0 }
           </call>
    <message>'-- create a new  file count  retention policy --'</message>   
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -82,15 +82,15 @@
        'objectName'             : 'my file count retention policy',
        'optionsString'           : '--type  file-count  --set number-of-files:%s' % (numberFiles),
        'expectedRC'             : 0 } 
    </call>
    </call>
    <message>'------  Add this retention policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add retention-policy-dn:"cn=my file count retention policy,cn=Log Retention Policies,cn=config"',
@@ -108,104 +108,104 @@
        'objectName'             : 'my size Limit Rotation Policy',
        'optionsString'           : '--type size-limit --set file-size-limit:4kb',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <message>'------  Add this rotation policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
    { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
    'dsInstancePort'     : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'       : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'    : DIRECTORY_INSTANCE_PSWD ,
    'subcommand'        : 'set-log-publisher-prop' ,
    'objectType'          : 'publisher-name' ,
    'objectName'         :  'File-Based Access Logger',
    'optionsString'       : '--add rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
    'expectedRC'         : 0 }
  { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
  'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
  'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
  'dsInstancePswd'  : DIRECTORY_INSTANCE_PSWD ,
  'subcommand'    : 'set-log-publisher-prop' ,
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--add rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
  'expectedRC'     : 0 }
    </call>
    <call function="'dsconfig'">
    { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
    'dsInstancePort'     : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'       : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'    : DIRECTORY_INSTANCE_PSWD ,
    'subcommand'        : 'set-log-publisher-prop' ,
    'objectType'          : 'publisher-name' ,
    'objectName'         :  'File-Based Access Logger',
    'optionsString'       : '--add  auto-flush:true --set append:true --set asynchronous:false',
    'expectedRC'         : 0 }
  <call function="'dsconfig'">
  { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
  'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
  'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
  'dsInstancePswd'  : DIRECTORY_INSTANCE_PSWD ,
  'subcommand'    : 'set-log-publisher-prop' ,
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--add  auto-flush:true --set append:true --set asynchronous:false',
  'expectedRC'     : 0 }
    </call>
    <!--  Starting loop -->
  <!--  Starting loop -->
     <!--  Execute ldapsearch until we detect a log rotation -->
     <!--  Check the number of logs files never exceed the number-of-files -->
   <!--  Execute ldapsearch until we detect a log rotation -->
   <!--  Check the number of logs files never exceed the number-of-files -->
    <script>
        cpt=0
        error=0
    </script>
     <loop from="1" to="10" until="error != 0">
    cpt=0
    error=0
    </script>
   <loop from="1" to="10" until="error != 0">
        <sequence>
            <message>'###########################'</message>
            <message>'          LOOP %s :' % cpt </message>
            <message>'###########################'</message>
            <message>'--- Execute a Search request ---'</message>
             <call function="'ldapSearchWithScript'">
            { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
               'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
               'dsBaseDN'       : DIRECTORY_INSTANCE_SFX,
               'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
               'dsInstancePswd'   :      DIRECTORY_INSTANCE_PSWD,
               'dsFilter'       : 'objectclass=*',
               'dsScope'            : 'base',
               'expectedRC'      :  0 }
             </call>
          <message>'###########################'</message>
      <message>'      LOOP %s :' % cpt </message>
        <message>'###########################'</message>
          <message>'--- Execute a Search request ---'</message>
           <call function="'ldapSearchWithScript'">
      { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
         'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
             'dsBaseDN'    : DIRECTORY_INSTANCE_SFX,
         'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
             'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
         'dsFilter'    : 'objectclass=*',
             'dsScope'        : 'base',
             'expectedRC'     :  0 }
           </call>
             <call function="'listFolder'">
              { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
                 'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
                 'filename' : 'access'
             { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
               'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
               'filename' : 'access'
              }
             </call>
             </call>
             <if expr="int(len(cmdResult)) > maxFiles">
                <sequence>
                  <script>
                      error=1
            error=1
                  </script>                    
                  <message>'Error, the number of logs files exceed the retention policy'</message>
                  <call function="'testFailed'"/>
                </sequence>
                <call function="'testFailed'"/>
            </sequence>
             </if>
             <script>
                  cpt=cpt+1
             </script>
       <script>
          cpt=cpt+1
           </script>
        </sequence>
      </loop>
    </loop>
 
      <if expr="error == 0" >
          <sequence>
    <if expr="error == 0" >
      <sequence>
             <message>'SUCCESS:  the retention policy has been checked'</message>
             <call function="'testPassed'"/>
          </sequence>
      </if>
           <call function="'testPassed'"/>
        </sequence>
      </if>
      <!-- cleanup -->
    <!-- cleanup -->
   <message>'------  remove this rotation policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
    { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
    'dsInstancePort'     : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'       : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'    : DIRECTORY_INSTANCE_PSWD ,
    'subcommand'        : 'set-log-publisher-prop' ,
    'objectType'          : 'publisher-name' ,
    'objectName'         :  'File-Based Access Logger',
    'optionsString'       : '--remove rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
    'expectedRC'         : 0 }
  { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
  'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
  'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
  'dsInstancePswd'  : DIRECTORY_INSTANCE_PSWD ,
  'subcommand'    : 'set-log-publisher-prop' ,
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--remove rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
  'expectedRC'     : 0 }
    </call>
    <message>'------  remove this retention policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
@@ -213,7 +213,7 @@
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--remove retention-policy-dn:"cn=my file count retention policy,cn=Log Retention Policies,cn=config"',
@@ -231,7 +231,7 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my file count retention policy',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <message>'-- delete a new size limit rotation policy --'</message>   
@@ -244,14 +244,14 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
</sequence>
</function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_rotation.xml
@@ -34,26 +34,26 @@
                               
       
       <!---
    #@TestMarker            size limit  rotation
    #@TestName              size limit  rotation
    #@TestIssue               Check the size limit rotation policy
    #@TestPreamble         none
    #@TestStep                Create a new size limit rotation policy
  #@TestMarker            size limit  rotation
  #@TestName              size limit  rotation
  #@TestIssue               Check the size limit rotation policy
  #@TestPreamble         none
  #@TestStep                Create a new size limit rotation policy
    #@TestStep                Configure the Size Limit rotation policy with a Max size to 4kb
    #@TestStep                Execute ldapsearch request until the log are rotate
    #@TestPostamble       none
    #@TestResult             the logs size must match the rotation size
  #@TestPostamble       none
  #@TestResult             the logs size must match the rotation size
      -->
    
  <testcase name="'logging : Rotation  policy : size limit  '">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the size limit rotation -----'
    </message>
    </message>
    <message>'-- create a new size limit rotation policy --'</message>   
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -65,15 +65,15 @@
        'objectName'             : 'my size Limit Rotation Policy',
        'optionsString'           : '--type size-limit --set file-size-limit:4kb',
        'expectedRC'             : 0 } 
    </call>
    <message>'------  Add this rotation policy to the Access log publisher --' </message>
    </call>
  <message>'------  Add this rotation policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
@@ -85,12 +85,12 @@
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add  auto-flush:true --set append:true --set asynchronous:false --set buffer-size:64kb',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -101,42 +101,42 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'rotation-policy-dn'
      }
    </call>
    }
    </call>
     <call function="'Sleep'">
   <call function="'Sleep'">
            { 'sleepForMilliSeconds'  : 20000 }
     </call>
     <!--  Starting loop -->
     <script>
   </call>
   <!--  Starting loop -->
   <script>
          listName=[]
          listSize=[]
     </script>
     <script>
         cpt=0
         nbLog=0
   </script>
   <script>
     cpt=0
     nbLog=0
     </script>  
     <!--  Execute ldapsearch until we detect a log rotation -->
     <!--   Stop when the first rotation is done -->
     <loop from="1" to="50" until="RC != 0">
         <sequence>
         <message>'###########################'</message>
         <message>'                  LOOP %s :' % cpt </message>
         <message>'###########################'</message>
         <message>'--- Execute a Search request ---'</message>
   <!--  Execute ldapsearch until we detect a log rotation -->
   <!--   Stop when the first rotation is done -->
   <loop from="1" to="50" until="RC != 0">
     <sequence>
         <message>'###########################'</message>
     <message>'                  LOOP %s :' % cpt </message>
     <message>'###########################'</message>
        <message>'--- Execute a Search request ---'</message>
          <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
          'dsInstancePswd'   :       DIRECTORY_INSTANCE_PSWD,
          'dsFilter'        : 'objectclass=*',
      'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
          'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
      'dsFilter'    : 'objectclass=*',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
          </call>    
@@ -149,102 +149,102 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'rotation-policy-dn'
        }
         </call>
         <message>'--- Check log files ---'</message>
      }
         </call>
       <message>'--- Check log files ---'</message>
         <call function="'listFolder'">
          { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
           'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
           'filename' : 'access'
           }
        </call>
        <if expr="len(cmdResult) > 0">
          <sequence>
    </call>
      <if expr="len(cmdResult) > 0">
        <sequence>
          <iterate var="result" in="cmdResult">
           <sequence>
               <script>
                   logname=result["name"]
                   logsize=result["size"]
                   found=0
               </script>
               <message>'the log file status for file  "%s" is %s ' % (logname,logsize)</message>
               <script>
                   for currentLog in listName:
                       if currentLog == logname:
                          found=1
                          currentIndex=listName.index(currentLog)
                          currentSize=listSize[currentIndex]
                          if currentSize != logsize:
                              listSize[currentIndex]=logsize
       <sequence>
         <script>
           logname=result["name"]
           logsize=result["size"]
           found=0
         </script>
         <message>'the log file status for file  "%s" is %s ' % (logname,logsize)</message>
         <script>
           for currentLog in listName:
               if currentLog == logname:
                  found=1
                  currentIndex=listName.index(currentLog)
                  currentSize=listSize[currentIndex]
                  if currentSize != logsize:
                      listSize[currentIndex]=logsize
                  if found == 0:
                     if nbLog != 0:
                        RC=1
                        newlogName=logname
                        newlogSize=logsize
                     listName.append(logname)
                     listSize.append(logsize)
               </script>
           </sequence>
          </iterate>
          <!--  set nbLog  when we find a log file -->
          if found == 0:
             if nbLog != 0:
                RC=1
                newlogName=logname
                newlogSize=logsize
             listName.append(logname)
             listSize.append(logsize)
         </script>
       </sequence>
      </iterate>
      <!--  set nbLog  when we find a log file -->
          <script>
              nbLog=1
          </script>
          <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
          </sequence>
         </if>
         <script>
             cpt=cpt+1
         </script>
         </sequence>
        nbLog=1
      </script>
          <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
          </sequence>
     </if>
     <script>
       cpt=cpt+1
     </script>
     </sequence>
     </loop>  
     <!-- ############################### -->
     <!-- Check log file size                                                -->
     <!-- all the log file size must be around 4kb                  -->
   <!-- Check log file size                                                -->
   <!-- all the log file size must be around 4kb                  -->
    <!-- ############################### -->
     <if expr="RC == 1">
       <sequence>
         <message>'A log rotation has been done. The new rotation file is "%s" (size = %s) ' % (newlogName,newlogSize)</message>
           <if expr="int(newlogSize) &lt;  4100 and int(newlogSize) > 4000" >
   <if expr="RC == 1">
     <sequence>
          <message>'A log rotation has been done. The new rotation file is "%s" (size = %s) ' % (newlogName,newlogSize)</message>
       <if expr="int(newlogSize) &lt;  4100 and int(newlogSize) > 4000" >
             <sequence>
               <message>'SUCCESS. The rotation based on size limit is successfull.  The file "%s" (size = %s) ' % (newlogName,newlogSize)</message>
               <call function="'testPassed'"/>
             </sequence>
           <else>
             <sequence>
               <message>'ERROR in the rotation. The file "%s" (size = %s) does not match the rotation size ' % (newlogName,newlogSize)</message>
               <call function="'testFailed'"/>
             </sequence>
         </else>
         </if>
       </sequence>
     <else>
         <sequence>
         <message>'ERROR. The rotation process didn t work.'</message>
         <call function="'testFailed'"/>
         </sequence>
               <call function="'testPassed'"/>
       </sequence>
         <else>
           <sequence>
           <message>'ERROR in the rotation. The file "%s" (size = %s) does not match the rotation size ' % (newlogName,newlogSize)</message>
               <call function="'testFailed'"/>
         </sequence>
     </else>
     </if>
     </sequence>
   <else>
     <sequence>
     <message>'ERROR. The rotation process didn t work.'</message>
         <call function="'testFailed'"/>
     </sequence>
     </else>  
     </if>
     </if>
    <!-- ############################### -->
    <!--   clean rotation policy -->
    <!-- ############################### -->
    <message>'------  remove this rotation policy to the Access log publisher --' </message>
  <!-- ############################### -->
    <!--   clean rotation policy -->
  <!-- ############################### -->
  <message>'------  remove this rotation policy to the Access log publisher --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--remove rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
@@ -262,14 +262,14 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
</sequence>
</function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_setup.xml
@@ -38,32 +38,32 @@
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -82,13 +82,13 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/logging/logging_writer.xml
@@ -35,18 +35,18 @@
<!-- #################################### -->
<!--
    #@TestMarker             access logger
    #@TestName               access logger properties check
    #@TestIssue
    #@TestPurpose           check the asynchronous mode with auto-flush works
    #@TestPreamble         none
    #@TestStep                 Set the Access Logger's properties to be an asynchronous mode
    #@TestStep                 Set the auto-flush to TRUE
  #@TestMarker             access logger
  #@TestName               access logger properties check
  #@TestIssue
  #@TestPurpose           check the asynchronous mode with auto-flush works
  #@TestPreamble         none
  #@TestStep                 Set the Access Logger's properties to be an asynchronous mode
  #@TestStep                 Set the auto-flush to TRUE
    #@TestStep                 Set the append property to false
    #@TestStep                 Configure the Size Limit rotation policy with a Max size to 1mb
    #@TestStep                 Execute ldapsearch request until the log are writen in the disk
    #@TestPostamble         none
    #@TestResult               The recors must be written to disk after each operation
  #@TestPostamble         none
  #@TestResult               The recors must be written to disk after each operation
      -->
<!-- #################################### -->
                               
@@ -55,23 +55,23 @@
  <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Check the Synchronous mode for Access loggers -----'
    </message>
    </message>
   
    <message>
        '  asynchronous:false  -  auto-flush:true  -  append:false -  buffer-size:20kb '
    </message>
  <message>
    '  asynchronous:false  -  auto-flush:true  -  append:false -  buffer-size:20kb '
  </message>
    <message>'------  set properties --' </message>
  <message>'------  set properties --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set auto-flush:true --set append:false --set asynchronous:false --set buffer-size:20kb',
@@ -83,40 +83,40 @@
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'subcommand'           : 'set-log-rotation-policy-prop' ,
        'objectType'              : 'policy-name' ,
        'objectName'             :  'Size Limit Rotation Policy',
        'optionsString'           : '--set file-size-limit:1mb',
        'expectedRC'             : 0 } 
    </call>
     <!--  Starting loop -->
     <script>
   <!--  Starting loop -->
   <script>
          listName=[]
          listSize=[]
     </script>
     <script>
         cpt=0
   </script>
   <script>
     cpt=0
     </script>  
     <!--  Execute ldapsearch until logs are written to disk -->
     <!-- as auto-flush is true, the logs must be written after each operation  -->
     <loop from="1" to="5" until="RC != 0">
         <sequence>
         <message>'###########################'</message>
         <message>'                  LOOP %s :' % cpt </message>
         <message>'###########################'</message>
         <message>'--- Execute a Search request ---'</message>
   <!--  Execute ldapsearch until logs are written to disk -->
   <!-- as auto-flush is true, the logs must be written after each operation  -->
   <loop from="1" to="5" until="RC != 0">
     <sequence>
         <message>'###########################'</message>
     <message>'                  LOOP %s :' % cpt </message>
     <message>'###########################'</message>
        <message>'--- Execute a Search request ---'</message>
          <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
          'dsInstancePswd'   :       DIRECTORY_INSTANCE_PSWD,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsInstanceDn'   :  DIRECTORY_INSTANCE_DN,
          'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
      'dsFilter'    : 'objectclass=*'  ,
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
          </call>    
@@ -128,89 +128,89 @@
        'objectName'             : 'log-publisher' ,
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'rotation-policy-dn'
        }
         </call>
          <message>'--- Check log files ---'</message>
        'attributeName'          : 'rotation-policy-dn'
      }
         </call>
        <message>'--- Check log files ---'</message>
          <call function="'listFolder'">
          { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
           'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
           'filename' : 'access'
           }
        </call>
        <if expr="len(cmdResult) > 0">
          <sequence>
    </call>
      <if expr="len(cmdResult) > 0">
        <sequence>
          <iterate var="result" in="cmdResult">
           <sequence>
               <script>
                   logname=result["name"]
                   logsize=result["size"]
                   found=0
               </script>
               <message>'log file status for file  %s is %s ' % (logname,logsize)</message>
               <script>
                   for currentLog in listName:
                       if currentLog == logname:
                          found=1
                          currentIndex=listName.index(currentLog)
                          currentSize=listSize[currentIndex]
                          if currentSize != logsize:
                              RC=1
                              listSize[currentIndex]=logsize
                              break
       <sequence>
         <script>
           logname=result["name"]
           logsize=result["size"]
           found=0
         </script>
         <message>'log file status for file  %s is %s ' % (logname,logsize)</message>
         <script>
           for currentLog in listName:
               if currentLog == logname:
                  found=1
                  currentIndex=listName.index(currentLog)
                  currentSize=listSize[currentIndex]
                  if currentSize != logsize:
                      RC=1
                      listSize[currentIndex]=logsize
                      break
              
                  if found == 0:
                     listName.append(logname)
                     listSize.append(logsize)
               </script>
           </sequence>
        </iterate>
        </sequence>
        </if>
        <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
         <script>
             cpt=cpt+1
         </script>
         </sequence>
          if found == 0:
             listName.append(logname)
             listSize.append(logsize)
         </script>
       </sequence>
    </iterate>
    </sequence>
      </if>
        <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
     <script>
       cpt=cpt+1
     </script>
     </sequence>
     </loop>  
     <message>'The log file status of the file "%s" has changed ' % logname</message>
   <message>'The log file status of the file "%s" has changed ' % logname</message>
     <!-- Check log file -->
     <!-- records must be writen after each operation -->
     <!-- we should exit the loop after the first ldapsearch -->
     <if expr="cpt != 2">
         <sequence>
         <message>'ERROR.  The writer are not flushed after every log records'</message>
         <call function="'testFailed'"/>
         </sequence>
     <else>
          <sequence>
          <message>'SUCCESS. The writer are flushed after every log records' </message>
          <call function="'testPassed'"/>
          </sequence>
     </else>
     </if>
   <!-- Check log file -->
   <!-- records must be writen after each operation -->
   <!-- we should exit the loop after the first ldapsearch -->
   <if expr="cpt != 2">
     <sequence>
     <message>'ERROR.  The writer are not flushed after every log records'</message>
         <call function="'testFailed'"/>
     </sequence>
   <else>
      <sequence>
      <message>'SUCCESS. The writer are flushed after every log records' </message>
          <call function="'testPassed'"/>
          </sequence>
   </else>
   </if>
  </sequence>
 </testcase>
<!-- #################################### -->
<!--
    #@TestMarker            Debug logger
    #@TestName              Debug logger properties check
    #@TestIssue
    #@TestPurpose          Basic tests on the Debug logger
    #@TestPreamble        none
    #@TestStep                Enabled the Debug  Logger
    #@TestStep                Define a spefic log file for debug message
  #@TestMarker            Debug logger
  #@TestName              Debug logger properties check
  #@TestIssue
  #@TestPurpose          Basic tests on the Debug logger
  #@TestPreamble        none
  #@TestStep                Enabled the Debug  Logger
  #@TestStep                Define a spefic log file for debug message
    #@TestStep                set the debug-log-level to All
    #@TestStep                Restart the server
    #@TestStep                Execute a ldapsearch request
    #@TestPostamble         none
    #@TestResult              Check the debug log file has been created and contains datas
  #@TestPostamble         none
  #@TestResult              Check the debug log file has been created and contains datas
      -->
<!-- #################################### -->
            
@@ -219,25 +219,25 @@
  <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
  <message>
        '----  Basic tests on Debug loggers -----'
    </message>
    </message>
     
    <message>'------  Enabled Debug logger --' </message>
  <message>'------  Enabled Debug logger --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'           : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'subcommand'           : 'set-log-publisher-prop' ,
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set enabled:true --set default-debug-level:all --set log-file:logs/mydebug',
        'expectedRC'             : 0 } 
    </call>
    </call>
    <call function="'RestartDs'">
        {   'dsHost'    : DIRECTORY_INSTANCE_HOST,
    {   'dsHost'    : DIRECTORY_INSTANCE_HOST,
             'dsPort'    : DIRECTORY_INSTANCE_PORT,
             'dsBindDN'  : DIRECTORY_INSTANCE_DN,
             'dsBindPwd' : DIRECTORY_INSTANCE_PSWD }
@@ -249,53 +249,53 @@
           'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
           'filename' : 'mydebug'
           }
     </call>
   </call>
     <script>
         error=0
   <script>
     error=0
     </script> 
     <if expr="len(cmdResult) == 0">
         <sequence>
         <message>'ERROR.  The Debug logger should be created'</message>
          <script>
              error=1
          </script>
         </sequence>
     <else>
          <sequence>
   <if expr="len(cmdResult) == 0">
     <sequence>
     <message>'ERROR.  The Debug logger should be created'</message>
      <script>
        error=1
        </script>
     </sequence>
   <else>
      <sequence>
             <iterate var="result" in="cmdResult">
                <sequence>
                 <script>
                   logsize=result["size"]
                 </script>
                 <if expr="logsize == 0">
            <sequence>
           <script>
           logsize=result["size"]
                 </script>
           <if expr="logsize == 0">
                   <sequence>
                      <message>'ERROR.  The Debug logger should contain data'</message>
                      <message>'ERROR.  The Debug logger should contain data'</message>
                      <script>
                          error=1
                      </script>
                   </sequence>
                 </if>
                 </sequence>
             </iterate>
           </sequence>
     </else>
     </if>
              error=1
              </script>
                   </sequence>
           </if>
             </sequence>
       </iterate>
         </sequence>
   </else>
   </if>
     <if expr="error == 0">
         <sequence>
           <call function="'testPassed'"/>
   <if expr="error == 0">
     <sequence>
         <call function="'testPassed'"/>
         </sequence>
     <else>
         <sequence>
         <call function="'testFailed'"/>
         </sequence>
     </else>
     </if>
         <sequence>
         <call function="'testFailed'"/>
         </sequence>
     </else>
   </if>
  </sequence>
 </testcase>
 </testcase>
</sequence>
</function>
opends/tests/functional-tests/testcases/privileges/privileges.xml
@@ -43,7 +43,7 @@
          </script>
      
          <call function="'testGroup_Preamble'"/>
   
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_users.xml' % (TESTS_DIR)"/>
@@ -73,7 +73,7 @@
            file="'%s/testcases/privileges/privileges_restore_task.xml' % (TESTS_DIR)"/>
          <call function="'privileges_restore_task'" />
  
          <call function="'testGroup_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_backup_task.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
        <!---
      <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
                #@TestMarker                Privileges Backup Tasks Tests
@@ -227,8 +227,8 @@
    
            </sequence>
          </testcase>
      <!---
    <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
                #@TestMarker                Privileges Backup Tasks Tests
@@ -341,7 +341,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -467,12 +467,12 @@
    
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,30 +58,30 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
      <block name="'Block Remove DS Topology'">
    <block name="'Block Remove DS Topology'">
              <!-- Remove  the topology created for the test suite -->
              <sequence>
                <message>
                 'Remove DS topology created for the Test Suite'
                </message>
                </message>
                <call function="'removeTopology'"/>
                <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                </call>
              </sequence>
              </sequence>
             <!-- End Block Remove DS Topology-->  
            </block>
            </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/privileges/privileges_directory_manager.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
            <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1813,7 +1813,7 @@
                <else>
                        <!--- Start DS -->
                        <sequence>
                        <message>
                        'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
                        </message>
@@ -1832,11 +1832,11 @@
                        <call function="'isAlive'">
                        { 'noOfLoops'        : 5 ,
                          'noOfMilliSeconds' : 2000 }
                        </call>
                        </call>
                        </sequence>
                        <!--- End Block DS Process Active -->
                </else>
        </if>
    </if>
                
                <message>
                   'Privileges: Directory Manager: server-shutdown, DM searching entry'
@@ -1866,7 +1866,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1961,7 +1961,7 @@
    
            </sequence>
          </testcase>
           
         
            
@@ -1969,7 +1969,7 @@
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_export_task.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
            <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -229,8 +229,8 @@
    
            </sequence>
          </testcase>
      <!---
    <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
                #@TestMarker                Privileges Export Tasks Tests
@@ -343,7 +343,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -469,12 +469,12 @@
    
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_import_task.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
        <!---
      <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
                #@TestMarker                Privileges Import Tasks Tests
@@ -216,7 +216,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -336,7 +336,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -468,12 +468,12 @@
    
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_new_root_user.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
            <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1801,7 +1801,7 @@
                <else>
                        <!--- Start DS -->
                        <sequence>
                        <message>
                        'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
                        </message>
@@ -1820,11 +1820,11 @@
                        <call function="'isAlive'">
                        { 'noOfLoops'        : 5 ,
                          'noOfMilliSeconds' : 2000 }
                        </call>
                        </call>
                        </sequence>
                        <!--- End Block DS Process Active -->
                </else>
        </if>
    </if>
                
                <message>
                   'Privileges: New Root User: server-shutdown, new root user searching entry'
@@ -1854,7 +1854,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -1947,13 +1947,13 @@
    
            </sequence>
          </testcase>
            
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_restore_task.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
            <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -264,7 +264,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -450,7 +450,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -649,12 +649,12 @@
    
            </sequence>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/privileges/privileges_setup.xml
@@ -40,34 +40,34 @@
          <script>
            CurrentTestPath['group']='privileges'
          </script>
      <block name="'Block Create DS Topology'">
    <block name="'Block Create DS Topology'">
            <!-- Create the topology necessary to the test group/suite -->
            <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
          <call function="'createTopology'">
                { 'initialiseInstance' : True }
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
      <block name="'Block DS Process Active'">
    <block name="'Block DS Process Active'">
          <!--- Start DS -->
              <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -86,16 +86,16 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
          <block name="'Block DS Load Data'">
              <!-- Load the data needed by the test suite -->
              <!-- Load the data needed by the test suite -->
              <sequence>
              <message>
                'Privileges: Privileges Setup: Adding Initial Entries'
              </message>
@@ -114,10 +114,10 @@
              </call>
    
            </sequence>      
          <!--- End Block DS Load Data -->
          </block>
          <!--- End Block DS Load Data -->
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/privileges/privileges_users.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='privileges'
              CurrentTestPath['group']='privileges'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -58,7 +58,7 @@
            file="'%s/testcases/privileges/privileges_setup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_setup'" />
      <!---
    <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
                #@TestMarker                Privileges Users Tests
@@ -2739,7 +2739,7 @@
                <else>
                        <!--- Start DS -->
                        <sequence>
                        <message>
                        'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
                        </message>
@@ -2758,11 +2758,11 @@
                        <call function="'isAlive'">
                        { 'noOfLoops'        : 5 ,
                          'noOfMilliSeconds' : 2000 }
                        </call>
                        </call>
                        </sequence>
                        <!--- End Block DS Process Active -->
                </else>
        </if>
    </if>
                
                <message>
                   'Privileges: Users: server-shutdown, Admin deleting privilege'
@@ -2834,7 +2834,7 @@
    
            </sequence>
          </testcase>
          <!---
                Place test-specific test information here.
                The tag, TestMarker, must be the same as the tag, TestSuiteName.
@@ -3019,13 +3019,13 @@
    
            </sequence>
          </testcase>
           
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/privileges/privileges_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'privileges_cleanup'" />
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/replication/basic/replication_basic.xml
@@ -63,7 +63,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/basic/replication_basic_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_basic_setup'" />
          <!--- Test Case information
          #@TestMarker          Replication Basic Tests
          #@TestName            Replication: Basic: Add Entry
@@ -73,7 +73,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Add Entry')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -92,7 +92,7 @@
                  'entryToBeAdded' : '%s/replication_add_root_suffix.ldif' % clientDataDir }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -105,7 +105,7 @@
              </call>
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>              
@@ -114,7 +114,7 @@
            </sequence>
          </testcase>
    
    
          <!--- Test Case information
          #@TestMarker          Replication Basic Tests
@@ -125,7 +125,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -154,7 +154,7 @@
                  'dsFilename' : '%s/replication_mod.ldif' % clientDataDir }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -177,7 +177,7 @@
              </call>                       
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>                                                 
@@ -185,7 +185,7 @@
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
    
          <!--- Test Case information
          #@TestMarker          Replication Basic Tests
@@ -196,7 +196,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Delete Entry')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -216,7 +216,7 @@
                  'dsBaseDN'         : entryDn }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -230,7 +230,7 @@
              </call>                      
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>                                 
@@ -239,7 +239,7 @@
            </sequence>
          </testcase>
          <!--- Test Case information
          #@TestMarker          Replication Basic Tests
          #@TestName            Replication: Basic: Add Multiple Entries
@@ -249,7 +249,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Add Multiple Entries')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -279,7 +279,7 @@
                  'entryToBeAdded' : '%s/replication/Example.ldif' % clientDataDir }
              </call>             
   
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -292,7 +292,7 @@
              </call>
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>
@@ -314,7 +314,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - add single attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -326,16 +326,16 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tmorris, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tmorris, ou=People,%s' % synchroSuffix,
                  'attributeName' : 'description',
                  'newAttributeValue' : ' ',
                  'changetype' : 'add' }
              </call>
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -358,7 +358,7 @@
              </call>                       
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -366,7 +366,7 @@
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
            
@@ -380,7 +380,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - add single value')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -392,10 +392,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tmorris, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tmorris, ou=People,%s' % synchroSuffix,
                  'attributeName' : 'departmentnumber',
                  'newAttributeValue' : '5203214400',
                  'changetype' : 'add' }
@@ -424,7 +424,7 @@
              </call>                       
                                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -444,7 +444,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - delete single attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -471,7 +471,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -484,7 +484,7 @@
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>        
                                
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -508,7 +508,7 @@
              </call>                       
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -528,7 +528,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - delete single value')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -540,10 +540,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwalker, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwalker, ou=People,%s' % synchroSuffix,
                  'attributeName' : 'roomNumber',
                  'newAttributeValue' : '3915',
                  'changetype' : 'delete' }
@@ -573,7 +573,7 @@
              </call>       
                
                    
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -594,7 +594,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - add multiple values')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -645,7 +645,7 @@
              </call>                       
    
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -666,7 +666,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - delete multiple values')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -685,15 +685,15 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'listAttributes' : valuesToDelete,
                  'changetype' : 'delete' }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -717,7 +717,7 @@
              </call>                 
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -740,7 +740,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - replace multiple values')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -759,15 +759,15 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'listAttributes' : valuesToReplace,
                  'changetype' : 'replace' }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -791,7 +791,7 @@
              </call>                 
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -813,7 +813,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - add single value to multiple valued attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -831,15 +831,15 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'listAttributes' : valuesToAdd,
                  'changetype' : 'add' }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -863,7 +863,7 @@
              </call>                 
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -885,7 +885,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - delete single value from multiple valued attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -903,15 +903,15 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=jwallace, ou=People,%s' % synchroSuffix,
                  'listAttributes' : valuesToDelete,
                  'changetype' : 'delete' }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -935,7 +935,7 @@
              </call>                 
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -956,7 +956,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - replace case sensitive attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -984,15 +984,15 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tfitter, ou=People,%s' % synchroSuffix,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'uid=tfitter, ou=People,%s' % synchroSuffix,
                  'listAttributes' : valuesToReplace,
                  'changetype' : 'replace' }
              </call>
              <!-- Check modify worked on "master" server -->
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
                { 'location'         : clientHost,
                  'dsPath'           : clientPath,
@@ -1016,7 +1016,7 @@
              </call>                 
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -1037,7 +1037,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - add binary attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -1063,7 +1063,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1075,7 +1075,7 @@
                  'dsInstancePswd'    : master.getRootPwd() ,
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>                            
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
@@ -1101,14 +1101,14 @@
              </call>    
            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
                                                            
@@ -1122,7 +1122,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - replace binary attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -1148,7 +1148,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1160,7 +1160,7 @@
                  'dsInstancePswd'    : master.getRootPwd() ,
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>                            
              <!-- Check modify worked on "master" server -->
              <call function="'ldapSearchWithScript'">
@@ -1186,14 +1186,14 @@
              </call>    
            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
@@ -1207,7 +1207,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Modify Entry - delete binary attribute')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -1234,7 +1234,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1271,14 +1271,14 @@
              </call>    
            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
                                                                                                                        
@@ -1292,7 +1292,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Rename Entry')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -1318,7 +1318,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1330,7 +1330,7 @@
                  'dsInstancePswd'    : master.getRootPwd() ,
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>                            
              <!-- Check modify worked on "master" server -->                
              <!-- check that "uid=kvaughan, ou=People, ${DIRECTORY_BASE}" does NOT exist anymore -->
@@ -1359,15 +1359,15 @@
              </call>
            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
                
@@ -1381,7 +1381,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Rename Entry (preserving old rdn)')">
            <sequence>
              <call function="'testCase_Preamble'"/>
@@ -1407,7 +1407,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1419,7 +1419,7 @@
                  'dsInstancePswd'    : master.getRootPwd() ,
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>                            
              <!-- Check modify worked on "master" server -->                
              <!-- check that "uid=jwallace, ou=People, ${DIRECTORY_BASE}" does NOT exist anymore -->
@@ -1458,14 +1458,14 @@
              </call>       
                            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
@@ -1480,14 +1480,14 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Rename Subtree')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                 'Replication: Basic: Rename Subtree. Check that a subtree rename (moddn) operation is well propagated by replication.'
              </message>
              <script>
                filename = 'replication_moddn.ldif'
                filePath = '%s/%s' % (logsTestDataDir,filename)
@@ -1506,7 +1506,7 @@
                { 'srcfile'    : filePath,
                  'destfile'   : '%s/%s' % (clientDataDir,filename),
                  'remotehost' : client.getHostname() }
              </call>
              </call>
              <!-- Modify "master" server -->                                
              <call function="'ldapModifyWithScript'">
@@ -1518,7 +1518,7 @@
                  'dsInstancePswd'    : master.getRootPwd() ,
                  'dsFilename' : '%s/%s' % (clientDataDir, filename) }
              </call>                            
              <!-- Check modify worked on "master" server -->                
              <!-- check that "uid=gfarmer, ou=People, ${DIRECTORY_BASE}" does NOT exist anymore -->
@@ -1547,21 +1547,21 @@
              </call>
            
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call>               
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          </testcase>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
opends/tests/functional-tests/testcases/replication/basic/replication_basic_setup.xml
@@ -33,21 +33,21 @@
    <sequence>
      <!--- Setup the client for the Basic test suite -->
      <!--- Setup the client for the Basic test suite -->
      <message>
        'Replication: Basic: Setup. Get client ready for Basic tests.'
      </message>
      </message>
      <script>
        synchroSuffix = master.getSynchronizedSuffixList()[0].getSuffixDn()
        entryDn = 'uid=scarter,%s' % synchroSuffix
        grandchildEntryDn = 'uid=scarter,ou=People,o=replication tests,%s' % synchroSuffix
        mod_type = 'replace'
        attr_type = 'roomnumber'
        attr_value = '1111'
        attr_value = '1111'
      </script>
      <script>
      <script>
        filename = 'replication_add_root_suffix.ldif'
        filePath = '%s/%s' % (logsTestDataDir,filename)
        write_replication_add_root_suffix_ldif_file(filePath, synchroSuffix)
@@ -61,12 +61,12 @@
        { 'srcfile'    : filePath,
          'destfile'   : '%s/%s' % (clientDataDir,filename),
          'remotehost' : client.getHostname() }
      </call>
      </call>
      <script>
        filename = 'replication_add_single.ldif'
        filePath = '%s/%s' % (logsTestDataDir,filename)
        write_replication_add_single_ldif_file(filePath, synchroSuffix)
        write_replication_add_single_ldif_file(filePath, synchroSuffix)
      </script>
      <!-- Copy the replication_add_single ldif to client host -->
@@ -78,11 +78,11 @@
          'destfile'   : '%s/%s' % (clientDataDir,filename),
          'remotehost' : client.getHostname() }
      </call>
      <script>
        filename = 'replication_add_multiple.ldif'
        filePath = '%s/%s' % (logsTestDataDir,filename)
        write_replication_add_multiple_ldif_file(filePath, synchroSuffix)
        write_replication_add_multiple_ldif_file(filePath, synchroSuffix)
      </script>
      <!-- Copy the replication_add_multiple ldif to client host -->
@@ -93,8 +93,8 @@
        { 'srcfile'    : filePath,
          'destfile'   : '%s/%s' % (clientDataDir,filename),
          'remotehost' : client.getHostname() }
      </call>
      </call>
      <script>
        filename = 'replication_mod.ldif'
        filePath = '%s/%s' % (logsTestDataDir,filename)
@@ -109,14 +109,14 @@
        { 'srcfile'    : filePath,
          'destfile'   : '%s/%s' % (clientDataDir,filename),
          'remotehost' : client.getHostname() }
      </call>
      </call>
      <call function="'checkRC'">
        { 'returncode' : RC ,
          'result'     : STAXResult }
      </call>
    </sequence>
  </function>
opends/tests/functional-tests/testcases/replication/binarycopy/binarycopy.xml
@@ -55,7 +55,7 @@
          #@TestHTMLLink        http://opends.dev.java.net/
          -->
            
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_setup'" />
@@ -73,7 +73,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Off-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -81,7 +81,7 @@
                 'Replication: Binary Copy: Off-line initialisation. Initialise replicated servers using off-line backup/restore'
              </message>
                              
              <!-- Stop the servers in the topology -->
              <!-- Stop the servers in the topology -->
              <call function="'stopServers'">
                [_topologyServerList]
              </call>
@@ -137,7 +137,7 @@
                
                
              <!-- Start the servers in the topology -->
              <!-- Start the servers in the topology -->
              <call function="'startServers'">
                [_topologyServerList]
              </call>                
@@ -155,7 +155,7 @@
                  'entryToBeAdded' : '%s/replication/tfitter.ldif' % clientDataDir }
              </call>         
                       
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -175,7 +175,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('On-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -183,7 +183,7 @@
                 'Replication: Binary Copy: On-line initialisation. Initialise replicated servers using on-line backup/restore'
              </message>
                              
              <!-- Clean the servers in the topology
              <!-- Clean the servers in the topology
              <call function="'deleteTrees'">
                [_topologyServerList, synchroSuffix, False]
              </call> -->
@@ -275,7 +275,7 @@
                  'entryToBeAdded' : '%s/replication/tfitter.ldif' % clientDataDir }
              </call>         
                       
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -289,9 +289,9 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/ldifimport/ldifimport.xml
@@ -55,7 +55,7 @@
          #@TestHTMLLink        http://opends.dev.java.net/
          -->
            
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_setup'" />
@@ -73,7 +73,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Off-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -81,7 +81,7 @@
                 'Replication: Ldif Import: Off-line initialisation. Initialise replicated servers using off-line export/import'
              </message>
                              
              <!-- Stop the servers in the topology -->
              <!-- Stop the servers in the topology -->
              <call function="'stopServers'">
                [_topologyServerList]
              </call>
@@ -137,7 +137,7 @@
                
                
              <!-- Start the servers in the topology -->
              <!-- Start the servers in the topology -->
              <call function="'startServers'">
                [_topologyServerList]
              </call>                
@@ -154,7 +154,7 @@
                  'entryToBeAdded' : '%s/replication/tfitter.ldif' % clientDataDir }
              </call>
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -174,7 +174,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('On-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -273,7 +273,7 @@
                  'entryToBeAdded' : '%s/replication/tfitter.ldif' % clientDataDir }
              </call>
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -288,9 +288,9 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/replication.xml
@@ -36,7 +36,7 @@
      <block name="'replication'">
        <sequence>
          <script>
            CurrentTestPath={}
            envAlreadyLoaded='true'
@@ -64,13 +64,13 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/basic/replication_basic.xml' % (TESTS_DIR)"/>
          <call function="'replication_basic'" />          
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/schema/schema.xml' % (TESTS_DIR)"/>
          <call function="'replication_schema'" />          
            
          <call function="'testGroup_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/replication_cleanup.xml
@@ -35,17 +35,17 @@
      <block name="'replication-cleanup'">
        <sequence>
          <!-- Stop the servers in the topology -->
        <sequence>
          <!-- Stop the servers in the topology -->
          <call function="'stopServers'">
            [_topologyServerList]
          </call>
  
          <!-- Remove  the topology created for the test suite -->
        <!-- Remove  the topology created for the test suite -->
          <message>
            'Remove DS topology created for the Synchronization Basic Test Suite'
          </message>
          </message>
  
          <call function="'removeTopology'">
            { 'multipleInstanceTopology' : True }
opends/tests/functional-tests/testcases/replication/replication_setup.xml
@@ -37,24 +37,24 @@
        </function-arg-description>
        <function-arg-property name="type" value="filepath"/>
      </function-arg-def>
    </function-map-args>
    </function-map-args>
    <sequence>
      <block name="'replication-setup'">
        <sequence>
          <message>
             'Create DS topology as described in %s' % topologyFile
          </message>
          <call function="'createTopology'">
            { 'topologyDescFile' : topologyFile,
      <call function="'createTopology'">
        { 'topologyDescFile' : topologyFile,
              'sharedDataFolder' : 'replication' }
          </call>
          <call function="'checkRC'">
      </call>
      <call function="'checkRC'">
                { 'returncode' : RC ,
                  'result'     : STAXResult }
          </call>
@@ -77,11 +77,11 @@
            consumerList = _topologyServerList[1:]              
          </script>        
                          
          <!-- Start the servers in the topology -->
          <!-- Start the servers in the topology -->
          <call function="'startServers'">
            [_topologyServerList]
          </call>            
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/resynchronization/resynchronization.xml
@@ -55,7 +55,7 @@
          #@TestHTMLLink        http://opends.dev.java.net/
          -->
            
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_setup'" />
@@ -73,7 +73,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Off-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -81,7 +81,7 @@
                 'Replication: Re-Synchronization: Off-line initialisation. Initialise replicated servers using off-line backup/restore'
              </message>
                              
              <!-- Stop the servers in the topology -->
              <!-- Stop the servers in the topology -->
              <call function="'stopServers'">
                [_topologyServerList]
              </call>
@@ -157,7 +157,7 @@
                
                
              <!-- Start the "consumer" servers -->
              <!-- Start the "consumer" servers -->
              <call function="'startServers'">
                [consumerList]
              </call>                
@@ -165,7 +165,7 @@
                
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -186,7 +186,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('On-line initialisation')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -197,7 +197,7 @@
              <!-- Clean the servers in the topology
              <call function="'deleteTrees'">
                [_topologyServerList, synchroSuffix, False]
              </call> -->
              </call> -->
              
              <!-- Delete manually added entry so that replication server won't add it automatically later on -->
              <call function="'ldapDeleteWithScript'">
@@ -289,7 +289,7 @@
                
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -303,9 +303,9 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/schema/schema.xml
@@ -55,7 +55,7 @@
          #@TestHTMLLink        http://opends.dev.java.net/
          -->
            
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_setup'" />
@@ -71,7 +71,7 @@
                'Create domain name for schema on server %s/%s' % (server.getDir(), OPENDSNAME)
              </message>
    
              <call function="'createMultimasterDomain'">
            <call function="'createMultimasterDomain'">
                { 'location' : server.getHostname(),
                  'dsPath' :  '%s/%s' % (server.getDir(), OPENDSNAME),
                  'dsInstanceHost'  : server.getHostname(),
@@ -96,7 +96,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Add objectclass')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -123,10 +123,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'attributeName' : 'objectClasses',
                  'newAttributeValue' : newObjectclass, 
                  'changetype' : 'add' }
@@ -143,12 +143,12 @@
                  'entryToBeAdded' : '%s/replication/testuser-0.ldif' % clientDataDir }
              </call>           
                       
              <!-- Verify the synchronization of the schema among the servers in the topology -->
              <!-- Verify the synchronization of the schema among the servers in the topology -->
              <call function="'verifySchemas'">
                [ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
              </call> 
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -169,7 +169,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Add attributetype')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -186,10 +186,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'attributeName' : 'attributeTypes',
                  'newAttributeValue' : newAttributetype, 
                  'changetype' : 'add' }
@@ -197,10 +197,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'attributeName' : 'objectClasses',
                  'newAttributeValue' : newObjectclass, 
                  'changetype' : 'add' }
@@ -217,12 +217,12 @@
                  'entryToBeAdded' : '%s/replication/testuser-1.ldif' % clientDataDir }
              </call>           
                       
              <!-- Verify the synchronization of the schema among the servers in the topology -->
              <!-- Verify the synchronization of the schema among the servers in the topology -->
              <call function="'verifySchemas'">
                [ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
              </call> 
                
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <!-- Verify the synchronization of the trees among the servers in the topology -->
              <call function="'verifyTrees'">
                [ clientHost, clientPath, master, consumerList, synchroSuffix ]
              </call> 
@@ -242,7 +242,7 @@
          #@TestSteps
          #@TestPostamble
          #@TestResult
          -->
          -->
          <testcase name="getTestCaseName('Delete objectclass')">
            <sequence>            
              <call function="'testCase_Preamble'"/>
@@ -258,10 +258,10 @@
              <call function="'modifyAnAttribute'">
                { 'dsPath' : masterPath,
                  'dsInstanceHost'   : masterHost ,
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'    : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'dsInstancePort'    : master.getPort(),
                  'dsInstanceDn'  : master.getRootDn(),
                  'dsInstancePswd'    : master.getRootPwd(),
                  'DNToModify'    : 'cn=schema',
                  'attributeName' : 'objectClasses',
                  'newAttributeValue' : newObjectclass, 
                  'changetype' : 'delete' }
@@ -298,9 +298,9 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/replication/totalupdate/totalupdate.xml
@@ -44,7 +44,7 @@
          </script>
          <call function="'testSuite_Preamble'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
          <call function="'replication_setup'" />
@@ -159,9 +159,9 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'replication_cleanup'" />
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
opends/tests/functional-tests/testcases/runFuncTests.xml
@@ -86,7 +86,7 @@
      <import machine="STAF_LOCAL_HOSTNAME"
              file="'%s/testcases/replication/replication.xml' % TESTS_DIR" />
      <!--
      <call function="'main_replication'" />
      <call function="'main_replication'" />
      -->
      <import machine="STAF_LOCAL_HOSTNAME"
opends/tests/functional-tests/testcases/schema/schema.xml
@@ -42,8 +42,8 @@
          </script>
          
          <call function="'testGroup_Preamble'"/>
          <!-- Call the test suites -->
          <import machine="STAF_LOCAL_HOSTNAME"
@@ -54,8 +54,8 @@
            file="'%s/testcases/schema/schema_dynamic.xml' % TESTS_DIR" />
          <call function="'schema-dynamic'" />
          <call function="'testGroup_Postamble'"/>
        </sequence>
opends/tests/functional-tests/testcases/schema/schema_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,32 +58,32 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/schema/schema_dynamic.xml
@@ -40,7 +40,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='schema'
              CurrentTestPath['group']='schema'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -62,7 +62,7 @@
            file="'%s/testcases/schema/schema_setup.xml' % (TESTS_DIR)"/>
          <call function="'schema_setup'"/>
         <!--- Test case: Update Schema via a file -->
         <!---
              Place test-specific test information here.
@@ -358,7 +358,7 @@
            file="'%s/testcases/schema/schema_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'schema_cleanup'"/>
        <call function="'testSuite_Postamble'"/>
      
        </sequence>
opends/tests/functional-tests/testcases/schema/schema_rfc_tests.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='schema'
              CurrentTestPath['group']='schema'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
            
@@ -49,7 +49,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/schema/schema_setup.xml' % (TESTS_DIR)"/>
          <call function="'schema_setup'"/>
         
          <!--- Test Case : Schema RFC Test 2079 -->
          <testcase name="getTestCaseName('RFC 2079')">
@@ -911,7 +911,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'o=rfc tests,dc=example,dc=com' ,
                'dsFilter'         : 'uid=tsmith' ,
                'attributes'       : 'calCalURI' }
                'attributes'     : 'calCalURI' }
                
            </call>
    
@@ -974,7 +974,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'o=rfc tests,dc=example,dc=com' ,
                'dsFilter'         : 'cn=corba1' ,
                'attributes'       : 'corbaRepositoryId' }
                'attributes'     : 'corbaRepositoryId' }
                
            </call>
            <call function="'checktestRC'">
@@ -1015,7 +1015,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'ou=java object,o=rfc tests,dc=example,dc=com' ,
                'dsFilter'         : 'cn=java1' ,
                'attributes'       : 'javaClassName' }
                'attributes'     : 'javaClassName' }
                
            </call>
    
@@ -1032,7 +1032,7 @@
            file="'%s/testcases/schema/schema_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'schema_cleanup'"/>
        <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/schema/schema_setup.xml
@@ -36,34 +36,34 @@
      <block name="'setup'">
      
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -82,16 +82,16 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
          <block name="'Block DS Load Data'">
          <!-- Load the data needed by the test suite -->
            <sequence>
      <!-- Load the data needed by the test suite -->
          <sequence>
              <message>
                 'Add entries that are required for the Schema Tests'
@@ -110,11 +110,11 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block DS Load Data -->
      </sequence>
          <!-- End Block DS Load Data -->
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/security/account_activation/security_account_activation.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
  
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/account_activation/security_setup_account_activation.xml' % (TESTS_DIR)"/>
@@ -68,13 +68,13 @@
            file="'%s/testcases/security/account_activation/security_teardown_account_activation.xml' % (TESTS_DIR)"/>
          <call function="'teardown_account_activation'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/security/account_activation/security_account_expiration.xml
@@ -94,7 +94,7 @@
              'dsBaseDN'         : 'dc=example,dc=com' ,
              'dsFilter'         : 'objectclass=*'  ,
              'extraParams'      : '-s base',
              'expectedRC'       : 49  }
              'expectedRC'       : 49  }
          </call>
          <call function="'testCase_Postamble'"/>
@@ -138,7 +138,7 @@
              'dsInstancePswd'   : 'inflict' ,
              'dsBaseDN'         : 'dc=example,dc=com' ,
              'dsFilter'         : 'objectclass=*'  ,
              'extraParams'      : '-s base' }
              'extraParams'      : '-s base' }
          </call>
          <call function="'testCase_Postamble'"/>
@@ -175,7 +175,7 @@
              'dsInstancePswd'   : 'inflict' ,
              'dsBaseDN'         : 'dc=example,dc=com' ,
              'dsFilter'         : 'objectclass=*'  ,
              'extraParams'      : '-s base'  }
              'extraParams'      : '-s base'  }
          </call>
          
          <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/account_activation/security_teardown_account_activation.xml
@@ -49,7 +49,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'o=Account Activation Tests,dc=example,dc=com' ,
                'extraParams'      : '-x',
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
opends/tests/functional-tests/testcases/security/account_activation/security_test_account.xml
@@ -94,7 +94,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -131,7 +131,7 @@
                'dsInstancePswd'   : 'sprain' ,
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base' }
                'extraParams'      : '-s base' }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
        
@@ -49,7 +49,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/auth_pwd_syntax/security_setup_auth_pwd_syntax.xml' % (TESTS_DIR)"/>
@@ -89,7 +89,7 @@
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_MD5_policy.xml
@@ -120,7 +120,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <message>
@@ -135,7 +135,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -171,7 +171,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_MD5_user1.ldif' % logsRemoteDataDir,
                'expectedRC'       : 65 }
                'expectedRC'       : 65 }
            </call>
@@ -224,7 +224,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_MD5_user2.ldif' % logsRemoteDataDir,
                'expectedRC'       : 21 }
                'expectedRC'       : 21 }
            </call>
@@ -240,7 +240,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base' ,
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -276,7 +276,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'ou=MD5 auth tests,o=Auth Pwd Syntax Tests,dc=example,dc=com' ,
                'extraParams'      : '-x',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
@@ -290,7 +290,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_del_new_policy.ldif' % logsRemoteDataDir ,
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA1_policy.xml
@@ -66,7 +66,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA1_policy.ldif' % logsRemoteDataDir,
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -103,7 +103,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA1_users.ldif' % logsRemoteDataDir,
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <message>
@@ -118,7 +118,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
@@ -134,7 +134,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -170,7 +170,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA1_user1.ldif' % logsRemoteDataDir,
                'expectedRC'       : 65 }
                'expectedRC'       : 65 }
            </call>
@@ -222,7 +222,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA1_user2.ldif' % logsRemoteDataDir,
                'expectedRC'       : 21 }
                'expectedRC'       : 21 }
            </call>
            <message>
@@ -237,7 +237,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -272,7 +272,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'ou=SHA1 auth tests,o=Auth Pwd Syntax Tests,dc=example,dc=com' ,
                'extraParams'      : '-x',
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <message>
@@ -285,7 +285,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_del_new_policy.ldif' % logsRemoteDataDir,
                'expectedRC'       : 0 }
                'expectedRC'       : 0 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA256_policy.xml
@@ -167,7 +167,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA256_user1.ldif' % logsRemoteDataDir,
                'expectedRC'         : 65 }
                'expectedRC'         : 65 }
            </call>
@@ -183,7 +183,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'         : 49 }
                'expectedRC'         : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -219,7 +219,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA256_user2.ldif' % logsRemoteDataDir,
                'expectedRC'         : 21 }
                'expectedRC'         : 21 }
            </call>
@@ -235,7 +235,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
               'expectedRC'         : 49 }
               'expectedRC'         : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA384_policy.xml
@@ -168,7 +168,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA384_user1.ldif' % logsRemoteDataDir,
                'expectedRC'         : 65 }
                'expectedRC'         : 65 }
            </call>
@@ -184,7 +184,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base' ,
               'expectedRC'         : 49  }
               'expectedRC'         : 49  }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -220,7 +220,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA384_user2.ldif' % logsRemoteDataDir,
               'expectedRC'         : 21 }
               'expectedRC'         : 21 }
            </call>
            <message>
@@ -235,7 +235,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'         : 49   }
                'expectedRC'         : 49   }
            </call>
      
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_SHA512_policy.xml
@@ -167,7 +167,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA512_user1.ldif' % logsRemoteDataDir,
                'expectedRC'         : 65   }
                'expectedRC'         : 65  }
            </call>
@@ -183,7 +183,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'         : 49   }
                'expectedRC'         : 49   }
            </call>
            
@@ -220,7 +220,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_SHA512_user2.ldif' % logsRemoteDataDir,
                'expectedRC'         : 21   }
                'expectedRC'         : 21  }
            </call>
            <message>
@@ -235,7 +235,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'         : 49   }
                'expectedRC'         : 49   }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/auth_pwd_syntax/security_auth_pwd_syntax_def_policy.xml
@@ -65,7 +65,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeModified'   : '%s/security/auth_pwd_syntax/admin_mod_def_policy.ldif' % logsRemoteDataDir,
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
            
@@ -106,7 +106,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/security/auth_pwd_syntax/admin_add_def_users.ldif' % logsRemoteDataDir,
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
@@ -122,7 +122,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
            <message>
@@ -137,7 +137,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'      : 49 }
                'expectedRC'      : 49 }
            </call>
            
@@ -174,7 +174,7 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeModified'   : '%s/security/auth_pwd_syntax/admin_mod_def_policy2.ldif' % logsRemoteDataDir,
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
@@ -190,7 +190,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base', 
                'expectedRC'      : 49 }
                'expectedRC'      : 49 }
            </call>
            <message>
@@ -205,7 +205,7 @@
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'      : 0 }
                'expectedRC'      : 0 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/bind_no_pwd/security_bind_no_pwd.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
              
@@ -51,7 +51,7 @@
          <call function="'security_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/bind_no_pwd/security_setup_bind_no_pwd.xml' % (TESTS_DIR)"/>
          <call function="'setup_bind_no_pwd'" />
@@ -69,7 +69,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        
        </sequence>
opends/tests/functional-tests/testcases/security/bind_no_pwd/security_pwd_null.xml
@@ -209,7 +209,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base -j %s/security/bind_no_pwd/null.pwd' % logsRemoteDataDir,
                'expectedRC'       : 53 }
                'expectedRC'       : 53 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/client_auth/client_auth.xml
@@ -38,59 +38,59 @@
        <sequence>
  
          <script>
            CurrentTestPath['group']='security'
      CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          <call function="'testSuite_Preamble'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
        <import machine="STAF_LOCAL_HOSTNAME"
           file="'%s/testcases/security/client_auth/client_auth_lib.xml' % (TESTS_DIR)" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>         
  
            <!--  client authentication setup -->
      <!--  client authentication setup -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/client_auth_setup.xml' % (TESTS_DIR)"/>
          <call function="'client_auth_setup'" />
            <!-- fingerprint certificates mapper -->
      <!-- fingerprint certificates mapper -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/fingerprint_mapper.xml' % (TESTS_DIR)"/>
          <call function="'fingerprint_mapper'" />
  
          <!-- subject DN to user attribut certificate mapper -->
             <import machine="STAF_LOCAL_HOSTNAME"
       <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/subject_dn_mapper.xml' % (TESTS_DIR)"/>
          <call function="'subject_dn_mapper'" />
            <!-- subject attribute  to user attribut certificate mapper -->
             <import machine="STAF_LOCAL_HOSTNAME"
      <!-- subject attribute  to user attribut certificate mapper -->
       <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/subject_attribute_mapper.xml' % (TESTS_DIR)"/>
          <call function="'subject_attribute_mapper'" />
            <!-- subject equals dn certificate mapper -->
             <import machine="STAF_LOCAL_HOSTNAME"
      <!-- subject equals dn certificate mapper -->
       <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/equal_dn_mapper.xml' % (TESTS_DIR)"/>
          <call function="'equal_dn_mapper'" />
          <!--  client authentication teardown -->
      <!--  client authentication teardown -->
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/client_auth/client_auth_teardown.xml' % (TESTS_DIR)"/>
          <call function="'client_auth_teardown'" />
          <call function="'client_auth_teardown'" />
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        </sequence>
opends/tests/functional-tests/testcases/security/client_auth/client_auth_lib.xml
@@ -26,17 +26,17 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
    <!-- **************************************************** -->
    <!--                       load variables                 -->
    <!-- **************************************************** -->
  <!-- **************************************************** -->
  <!--                       load variables                 -->
  <!-- **************************************************** -->
 <function name="loadVariables">
    <function-prolog>
      This function loads variables used by the client_auth testsuite
    </function-prolog>
    <sequence>
  <!-- Local variables -->
    <script>
@@ -45,22 +45,22 @@
          CERT_TMP="%s/../%s/CERT_%s" % (dsPath,relativeDataDir,DIRECTORY_INSTANCE_PORT)
          CLIENT_KEYSTORE="%s/keystore" % (CERT_TMP)
          CLIENT_KEYPASS="password"
          CLIENT_STOREPASS="password"
          CLIENT_STOREPASS="password"
          USER_1_CERT="client-cert-1"
          USER_1_CERT_FILE="%s/client_cert_1.txt" % (CERT_TMP)
          USER_1_DN ="uid=%s,%s" % (USER_1_CERT,DIRECTORY_INSTANCE_SFX)
          USER_1_DN  ="uid=%s,%s" % (USER_1_CERT,DIRECTORY_INSTANCE_SFX)
          USER_1_CERT_FILE_RFC="%s/client_cert_1_rfc.txt" % (CERT_TMP)
          USER_2_CERT="client-cert-2"
          USER_2_CERT_FILE_RFC="%s/client_cert_2_rfc.txt" % (CERT_TMP)
          USER_2_CERT_FILE="%s/client_cert_2.txt" % (CERT_TMP)
          USER_2_DN ="uid=%s,%s" % (USER_2_CERT,DIRECTORY_INSTANCE_SFX)
          USER_2_CERT_FILE="%s/client_cert_2.txt" % (CERT_TMP)
          USER_2_DN  ="uid=%s,%s" % (USER_2_CERT,DIRECTORY_INSTANCE_SFX)
          SERVER_CERT_FILE="%s/server_cert.txt" % (CERT_TMP)
          user1LdifFileName='user1_cert.ldif'
          user2LdifFileName='user2_cert.ldif'
          remoteUser1LdifFile='%s/%s/../%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME,relativeDataDir,user1LdifFileName)
          remoteUser2LdifFile='%s/%s/../%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME,relativeDataDir,user2LdifFileName)
          localUser1LdifFile='%s/%s' % (logsTempDir,user1LdifFileName)
          localUser2LdifFile='%s/%s' % (logsTempDir,user2LdifFileName)
          localUser2LdifFile='%s/%s' % (logsTempDir,user2LdifFileName)
     </script>
    </sequence>
    </function>
opends/tests/functional-tests/testcases/security/client_auth/client_auth_setup.xml
@@ -59,10 +59,10 @@
              'keystore'        : 'keystore',
              'storepass'       : SERVER_STOREPASS,
              'keypass'         : SERVER_KEYPASS,
              'storetype'      : 'JKS'
              'storetype'       : 'JKS'
            }
          </call>  
          <!-- Self-Sign Server Cert    -->
          <message>
                   '---- Self-Signing Server Certicate  ---- '
@@ -73,7 +73,7 @@
              'storepass'       : SERVER_STOREPASS,
              'keypass'         : SERVER_KEYPASS,
               'keystore'        : 'keystore',
               'storetype'         : 'JKS'
               'storetype'       : 'JKS'
            }
          </call>
   
@@ -84,17 +84,17 @@
          <call function="'createFolder'">
              { 'location' : DIRECTORY_INSTANCE_HOST, 
                 'foldername' : CERT_TMP }
          </call>
          </call>
          <call function="'checktestRC'">
             { 'returncode' : RC ,
             'result'     : STAXResult }
          </call>
          </call>
            
          <message>
                   '---- Generating client Certicate : %s ---- ' % (USER_1_CERT)
          </message>
            
          <!-- create a client certificate  : USER_1_CERT -->
          <!-- create a client certificate  : USER_1_CERT -->
          <call function="'genCertificate'">
           { 'certAlias' : USER_1_CERT,  
             'dname'     : USER_1_DN,
@@ -144,7 +144,7 @@
          <call function="'testCase_Postamble'" />
       </sequence>
      </testcase>
      
      <!--- Test Case : export client and server certificates -->
      <!---
@@ -154,11 +154,11 @@
            #@TestPurpose             Export  and import client and server certificates
            #@TestPreamble           none
            #@TestStep                  Export client and server certificates
            #@TestStep                  Import the certificates in the server and clients Database
        #@TestStep                  Import the certificates in the server and clients Database
            #@TestPostamble          none
            #@TestResult                Success if OpenDS returns 0 for all operations
        -->
      <testcase name="getTestCaseName(' setup. Export and Import certificates')">
        <sequence>
          <call function="'testCase_Preamble'" />
@@ -167,14 +167,14 @@
          <call function="'loadVariables'" />
                  
          <!-- Export the server Cert -->
          <message>'----  Export the  Server Certicate ----'</message>
          <message>'----  Export the  Server Certicate ----'</message>
          <call function="'ExportCertificate'">
            { 'certAlias'  : 'server-cert' ,
              'outputfile' : SERVER_CERT_FILE,
              'storepass'  : SERVER_STOREPASS,
              'storetype'  : 'JKS' 
            }
          </call>
          </call>
          <!-- export client certificate : USER_1_CERT -->
          <message> '----  Export the  client certificate : : %s ---- ' % (USER_1_CERT)</message>
@@ -225,9 +225,9 @@
              'storetype'  : 'JKS' 
            }
          </call>
          <!-- Import the server Certificate under the client database -->
          <message>'----  Import the  Server Certificate under the client keystore----'</message>
          <message>'----  Import the  Server Certificate under the client keystore----'</message>
          <call function="'ImportCertificate'">
            { 'certAlias' : 'server-cert',
              'inputfile' : SERVER_CERT_FILE,
@@ -246,8 +246,8 @@
              'storetype' : 'JKS'
            }
          </call>
          <message> '----  Import the  client Certificates %s under the server keystore----' % (USER_2_CERT)</message>
          <message> '----  Import the  client Certificates %s under the server keystore----' % (USER_2_CERT)</message>
          <call function="'ImportCertificate'">
            { 'certAlias' : USER_2_CERT,
              'inputfile' : USER_2_CERT_FILE,
@@ -300,7 +300,7 @@
              'dsBaseDN'       : DIRECTORY_INSTANCE_SFX,
              'dsScope'        : 'base',
              'dsFilter'       : 'objectclass=*' ,
              'dsUseSSL'       : ' ',
              'dsUseSSL'       : ' ',
              'dsTrustAll'     : ' ',
              'expectedRC'     :  0 
            }
@@ -345,7 +345,7 @@
          
          <!-- Create users entries--> 
          <!-- Create USER_1_DN -->       
          <message> '----  Create User entry : %s----' % USER_1_DN</message>
          <message> '----  Create User entry : %s----' % USER_1_DN</message>
          <script>
            listAttr = []
            listAttr.append('objectclass:top')
@@ -363,9 +363,9 @@
          <call function="'addAnEntry'">
            { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
              'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
              'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
              'dsInstanceDn'   : DIRECTORY_INSTANCE_DN ,
              'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
              'DNToAdd'        : USER_1_DN,
              'DNToAdd'         : USER_1_DN,
              'listAttributes' : listAttr,
              'expectedRC'     :  0
            }
@@ -410,9 +410,9 @@
          <call function="'modifyEntry'">
            { 'dsInstanceHost'    : DIRECTORY_INSTANCE_HOST,
              'dsInstancePort'    : DIRECTORY_INSTANCE_PORT,
              'dsInstanceDn'        : DIRECTORY_INSTANCE_DN,
              'dsInstanceDn'      : DIRECTORY_INSTANCE_DN,
              'dsInstancePswd'    : DIRECTORY_INSTANCE_PSWD,
              'entryToBeModified'   : remoteUser1LdifFile,
              'entryToBeModified'  : remoteUser1LdifFile,
              'expectedRC'        :  0
            }
          </call>
@@ -427,9 +427,9 @@
            listAttr.append('objectclass:organizationalperson')
            listAttr.append('objectclass:inetorgperson')
            listAttr.append('objectclass:person')
            listAttr.append('objectclass:ds-certificate-user')
            listAttr.append('objectclass:ds-certificate-user')
            listAttr.append('objectclass:strongAuthenticationUser')
            listAttr.append('userCertificate;binary:  bad_certificate')
            listAttr.append('userCertificate;binary:  bad_certificate')
            listAttr.append('givenname:%s' % USER_2_CERT)
            listAttr.append('sn:%s' % USER_2_CERT)
            listAttr.append('cn:%s' % USER_2_CERT)
@@ -437,9 +437,9 @@
          <call function="'addAnEntry'">
            { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
              'dsInstancePort' : DIRECTORY_INSTANCE_PORT,
              'dsInstanceDn'     : DIRECTORY_INSTANCE_DN,
              'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
              'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
              'DNToAdd'        : USER_2_DN,
              'DNToAdd'         : USER_2_DN,
              'listAttributes' : listAttr,
              'expectedRC'     :  0
            }
@@ -455,7 +455,7 @@
                ret_str+=line.strip()
          </script>
          
          <!-- Modify the user Entry to store the certificates -->
          <!-- Modify the user Entry to store the certificates -->
          <script>
            listAttr = []
            listAttr.append('dn: %s' % USER_2_DN)
@@ -485,9 +485,9 @@
          <call function="'modifyEntry'">
            { 'dsInstanceHost'    : DIRECTORY_INSTANCE_HOST,
              'dsInstancePort'    : DIRECTORY_INSTANCE_PORT,
              'dsInstanceDn'        : DIRECTORY_INSTANCE_DN,
              'dsInstanceDn'      : DIRECTORY_INSTANCE_DN,
              'dsInstancePswd'    : DIRECTORY_INSTANCE_PSWD,
              'entryToBeModified'   : '%s' % remoteUser2LdifFile,
              'entryToBeModified'  : '%s' % remoteUser2LdifFile,
              'expectedRC'        :  0 
            }
          </call>
opends/tests/functional-tests/testcases/security/client_auth/client_auth_teardown.xml
@@ -61,14 +61,14 @@
       <sequence>
          <call function="'testCase_Preamble'"/>
            <!-- Load in the local shared python objects from libraries -->
         <!-- Load in the local shared python objects from libraries -->
           <call function="'loadVariables'">
           </call>
         </call>
            <!--- Unconfigure  SSL  and TLS -->
           <message>
               '----  Configure SSL  and TLS----'
           </message>
           </message>
           <call function="'unconfigureSSL_TLS'">
              { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
@@ -76,18 +76,18 @@
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD  }
           </call>
              <!-- remove client certificates keystore -->
        <!-- remove client certificates keystore -->
            <message>
                'Delete folder %s' % (CERT_TMP)
            </message>  
            <call function="'deleteFolder'">
            { 'location' : DIRECTORY_INSTANCE_HOST, 
              'foldername' : CERT_TMP }
            </call>
          'foldername' : CERT_TMP }
            </call>
            <!--- Remove JKS Keystore -->
            <message>
               'Security: client_auth:  Removing JKS Keystore'
@@ -108,37 +108,37 @@
               'Security: client_auth: Postamble. Searching with Unsecure Connection'
            </message>
            <call function="'SearchObject'">
            <call function="'SearchObject'">
              { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'        :  DIRECTORY_INSTANCE_SFX ,
                'dsScope'           :  'base',
        'dsScope'           :  'base',
                'dsFilter'             : 'objectclass=*' ,
                'expectedRC'           :  0 }
                'expectedRC'           :  0 }
            </call>
            <call function="'DeleteEntry'">
                   { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                       'dsInstanceDn'      : DIRECTORY_INSTANCE_DN ,
                       'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                       'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                       'dsBaseDN'      : USER_1_DN,
                       'expectedRC'           :  0 }
                       'dsBaseDN'     : USER_1_DN,
                       'expectedRC'           :  0 }
             </call>
            <call function="'DeleteEntry'">
                   { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                       'dsInstanceDn'      : DIRECTORY_INSTANCE_DN ,
                       'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                       'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                       'dsBaseDN'      : USER_2_DN,
                       'expectedRC'           :  0 }
                       'dsBaseDN'     : USER_2_DN,
                       'expectedRC'           :  0 }
             </call>
         
            <call function="'testCase_Postamble'"/>
          </sequence>
        </testcase>
opends/tests/functional-tests/testcases/security/client_auth/equal_dn_mapper.xml
@@ -34,54 +34,54 @@
                               
       <!--- Test Case : setup -->
       <!---
    #@TestMarker              Setup Tests
    #@TestName                Set the SASL EXTERNAL mechanism to Subject Equal DN
    #@TestIssue
    #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject EqualN
    #@TestPreamble           none
    #@TestStep                  Set the SASL EXTERNAL mechanism to Subject Equal DN
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestMarker              Setup Tests
  #@TestName                Set the SASL EXTERNAL mechanism to Subject Equal DN
  #@TestIssue
  #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject EqualN
  #@TestPreamble           none
  #@TestStep                  Set the SASL EXTERNAL mechanism to Subject Equal DN
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName(' setup - equal_dn_mapper')">
      <sequence>
    <sequence>
      <call function="'testCase_Preamble'"/>
      <message>
             '----  Configure the SASL EXTERNAL mechanism -----'
      </message>
      </message>
      <call function="'modifyAnAttribute'">
          { 'dsInstanceHost'       :  DIRECTORY_INSTANCE_HOST ,
             'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
             'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
             'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
             'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
             'DNToModify'           :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'DNToModify'          :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'attributeName'        : 'ds-cfg-certificate-mapper-dn',
             'newAttributeValue'  : 'cn=Subject Equals DN,cn=Certificate Mappers,cn=config',
             'changetype' : 'replace',
             'expectedRC'           :  0 }
             'expectedRC'           :  0 }
      </call>
   
      <call function="'testCase_Postamble'"/>
    </sequence>
  </testcase>
  
  
<!---
    #@TestMarker             Equal DN mapping
    #@TestName               Mapping on DN
    #@TestIssue
    #@TestPurpose           Use the Equal DN certificate mapper
  #@TestMarker             Equal DN mapping
  #@TestName               Mapping on DN
  #@TestIssue
  #@TestPurpose           Use the Equal DN certificate mapper
   #@TestPurpose            The mapping will be done on entry DN
   #@TestStep                  Two users entries are used to validate this mapper
    #@TestPreamble          none
    #@TestPostamble         none
    #@TestResult               Success if OpenDS returns 0 for all operations
  #@TestPreamble          none
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName('Equal DN mapping ')">
@@ -89,19 +89,19 @@
    <call function="'testCase_Preamble'"/>
   
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
    <!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -110,9 +110,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
         STAXCode = RC
         ldapSearchResult = STAXResult[0][1]
@@ -122,14 +122,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- bound as USER_2_DN -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -138,9 +138,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
         STAXCode = RC
         ldapSearchResult = STAXResult[0][1]
@@ -150,15 +150,15 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- bound as USER_1_DN -->
   <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
   <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -167,7 +167,7 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
@@ -179,14 +179,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <!-- bound as USER_2_DN -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -195,7 +195,7 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
           STAXCode = RC
@@ -206,8 +206,8 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <call function="'testCase_Postamble'"/>      
    </sequence>
  </testcase>
opends/tests/functional-tests/testcases/security/client_auth/fingerprint_mapper.xml
@@ -34,17 +34,17 @@
                               
       <!--- Test Case : setup -->
       <!---
    #@TestMarker              Setup Tests
    #@TestName                Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
    #@TestIssue
    #@TestPurpose            Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
    #@TestPreamble           none
    #@TestStep                  Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
    #@TestStep                  keep the default ds-cfg-certificate-subject-attribute-type which is ds-certificate-subject-dn
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestMarker              Setup Tests
  #@TestName                Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
  #@TestIssue
  #@TestPurpose            Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
  #@TestPreamble           none
  #@TestStep                  Set the SASL EXTERNAL mechanism to fingerprint certificate mapper
  #@TestStep                  keep the default ds-cfg-certificate-subject-attribute-type which is ds-certificate-subject-dn
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName(' setup - fingerprint_mapper')">
@@ -53,18 +53,18 @@
    <message>
             '----  Configure the SASL EXTERNAL mechanism -----'
    </message>
    </message>
    <call function="'modifyAnAttribute'">
          { 'dsInstanceHost'       :  DIRECTORY_INSTANCE_HOST ,
             'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
             'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
             'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
             'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
             'DNToModify'           :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'DNToModify'          :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'attributeName'        : 'ds-cfg-certificate-mapper-dn',
             'newAttributeValue'  : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
             'changetype' : 'replace',
             'expectedRC'           :  0 }
             'expectedRC'           :  0 }
    </call>
 
    <call function="'testCase_Postamble'"/>
@@ -94,23 +94,23 @@
    <call function="'testCase_Preamble'"/>
 
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
 
      <!-- get the fingerprint for USER_1_CERT -->
      <!-- get the fingerprint for USER_1_CERT -->
      <call function="'getFingerprint'">
           { 'certAlias'        : '%s' % USER_1_CERT,  
            'storepass'       : CLIENT_STOREPASS,
            'keystore'        : CLIENT_KEYSTORE }
      </call> 
      <script>
            STAXCode = RC
            certificateResult = STAXResult[0][1]
      </script>
      <script>
    <script>
            string_len=len(certificateResult)
            index_MD5=certificateResult.find("MD5:") 
            index_SHA1=certificateResult.find("SHA1:")
@@ -118,22 +118,22 @@
            SHA1_fingerprint_cert1=certificateResult[index_SHA1+5:string_len].strip()
      </script>
    
     <message>'MD5 fingerprint for %s is  : %s ' %  (USER_1_CERT,MD5_fingerprint_cert1)</message>
     <message>'SHA1 fingerprint for %s  is  : %s ' %  (USER_1_CERT,SHA1_fingerprint_cert1)</message>
   <message>'MD5 fingerprint for %s is  : %s ' %  (USER_1_CERT,MD5_fingerprint_cert1)</message>
   <message>'SHA1 fingerprint for %s  is  : %s ' %  (USER_1_CERT,SHA1_fingerprint_cert1)</message>
  
      <!-- get the fingerprint for USER_2_CERT -->
      <!-- get the fingerprint for USER_2_CERT -->
      <call function="'getFingerprint'">
           { 'certAlias'        : '%s' % USER_2_CERT,  
            'storepass'       : CLIENT_STOREPASS,
            'keystore'        : CLIENT_KEYSTORE }
      </call> 
      <script>
            STAXCode = RC
            certificateResult = STAXResult[0][1]
      </script>
      <script>
    <script>
            string_len=len(certificateResult)
            index_MD5=certificateResult.find("MD5:") 
            index_SHA1=certificateResult.find("SHA1:")
@@ -141,73 +141,73 @@
            SHA1_fingerprint_cert2=certificateResult[index_SHA1+5:string_len].strip()
      </script>
  
     <message>'MD5 fingerprint for %s is  : %s ' %  (USER_2_CERT,MD5_fingerprint_cert2)</message>
     <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_2_CERT,SHA1_fingerprint_cert2)</message>
   <message>'MD5 fingerprint for %s is  : %s ' %  (USER_2_CERT,MD5_fingerprint_cert2)</message>
   <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_2_CERT,SHA1_fingerprint_cert2)</message>
    <!--    Configure the mapper to map MD5 -->
  <!--   Configure the mapper to map MD5 -->
     <script>
            listAttr = []   
            listAttr.append('ds-cfg-certificate-fingerprint-attribute-type:ds-certificate-fingerprint')
            listAttr.append('ds-cfg-certificate-fingerprint-algorithm:MD5')
     </script>    
    <message>'----- Configure the mapper to map MD5 fingerprint '</message>
    <message>'----- Configure the mapper to map MD5 fingerprint '</message>
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'DNToModify'          : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'listAttributes' : listAttr,
    'changetype'              : 'replace',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>          
   
   <!-- configure the user entries -->
   <message>'----- Configure the attribute ds-certificate-fingerprint  for user %s ---' % USER_1_DN</message>
   <message>'----- ds-certificate-fingerprint is the MD5 fingerprint  of the certificate %s ' % USER_1_CERT</message>
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_1_DN,
    'DNToModify'        : USER_1_DN,
    'attributeName'       : 'ds-certificate-fingerprint',
    'newAttributeValue'  : MD5_fingerprint_cert1,
    'changetype'            : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
   <message> '----- Configure the attribute ds-certificate-fingerprint  for user %s ---' % USER_2_DN</message>
   <message>'------ ds-certificate-fingerprint is the SHA1 fingerprint  of the certificate %s ' % USER_2_CERT</message>
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'ds-certificate-fingerprint',
    'newAttributeValue'  : SHA1_fingerprint_cert2,
    'changetype'            : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>            
    <!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
      'dsKeyStorePassword'   :  CLIENT_STOREPASS,
       'dsUseSSL'             :  ' ',
       'dsUseSASLExternal'   :  ' ',
@@ -216,9 +216,9 @@
       'dsKeyStorePath'        : CLIENT_KEYSTORE,
       'dsReportAuthzID'   : ' ',
       'dsScope'                 : 'base',
       'expectedRC'           :  0 }
       'expectedRC'           :  0 }
     </call>    
     <script>
      STAXCode = RC
      ldapSearchResult = STAXResult[0][1]
@@ -228,15 +228,15 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- No bound expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -245,20 +245,20 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'            :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -267,9 +267,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
          STAXCode = RC
          ldapSearchResult = STAXResult[0][1]
@@ -279,14 +279,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
        'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -295,39 +295,39 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
        'expectedRC'               : 49 }
     </call>    
   <!--         Configure the mapper to map SHA1  fingerprint   -->
   <message>'----- Configure the mapper to map SHA1 fingerprint '</message>
        <script>
   <!--     Configure the mapper to map SHA1  fingerprint   -->
   <message>'----- Configure the mapper to map SHA1 fingerprint '</message>
       <script>
            listAttr = []   
            listAttr.append('ds-cfg-certificate-fingerprint-attribute-type:ds-certificate-fingerprint')
            listAttr.append('ds-cfg-certificate-fingerprint-algorithm:SHA1')
      </script>      
 
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'DNToModify'          : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'listAttributes' : listAttr,
    'changetype'              : 'replace',
    'expectedRC'           :  0 }
    </call>
    'expectedRC'           :  0 }
    </call>
<!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2_DN -->
    <!-- bound as USER_2_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
      'dsKeyStorePassword'   :  CLIENT_STOREPASS,
       'dsUseSSL'             :  ' ',
       'dsUseSASLExternal'   :  ' ',
@@ -336,9 +336,9 @@
       'dsKeyStorePath'        : CLIENT_KEYSTORE,
       'dsReportAuthzID'   : ' ',
       'dsScope'                 : 'base',
       'expectedRC'           :  0 }
       'expectedRC'           :  0 }
     </call>    
     <script>
      STAXCode = RC
      ldapSearchResult = STAXResult[0][1]
@@ -348,14 +348,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- No bound expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -364,18 +364,18 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2__DN -->
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2__DN -->
    <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'            :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -384,9 +384,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
          STAXCode = RC
          ldapSearchResult = STAXResult[0][1]
@@ -396,14 +396,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -412,38 +412,38 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
        'expectedRC'               : 49 }
     </call>    
     <!--  Restore initial users configuration -->   
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_1_DN,
    'DNToModify'        : USER_1_DN,
    'attributeName'       : 'ds-certificate-fingerprint',
    'newAttributeValue'  : MD5_fingerprint_cert1,
    'changetype'            : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
  
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'ds-certificate-fingerprint',
    'newAttributeValue'  : SHA1_fingerprint_cert2,
    'changetype'            : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>            
    <call function="'testCase_Postamble'"/>      
    </sequence>
  </testcase>
@@ -472,23 +472,23 @@
    <call function="'testCase_Preamble'"/>
 
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
 
      <!-- get the fingerprint for USER_1_CERT -->
      <!-- get the fingerprint for USER_1_CERT -->
      <call function="'getFingerprint'">
           { 'certAlias'        : '%s' % USER_1_CERT,  
            'storepass'       : CLIENT_STOREPASS,
            'keystore'        : CLIENT_KEYSTORE }
      </call> 
      <script>
            STAXCode = RC
            certificateResult = STAXResult[0][1]
      </script>
      <script>
    <script>
            string_len=len(certificateResult)
            index_MD5=certificateResult.find("MD5:") 
            index_SHA1=certificateResult.find("SHA1:")
@@ -497,23 +497,23 @@
      </script>
 
     <message>'MD5 fingerprint for %s is  : %s ' %  (USER_1_CERT,MD5_fingerprint_cert1)</message>
     <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_1_CERT,SHA1_fingerprint_cert1)</message>
   <message>'MD5 fingerprint for %s is  : %s ' %  (USER_1_CERT,MD5_fingerprint_cert1)</message>
   <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_1_CERT,SHA1_fingerprint_cert1)</message>
  
      <!-- get the fingerprint for USER_2_CERT -->
      <!-- get the fingerprint for USER_2_CERT -->
      <call function="'getFingerprint'">
           { 'certAlias'        : '%s' % USER_2_CERT,  
            'storepass'       : CLIENT_STOREPASS,
            'keystore'        : CLIENT_KEYSTORE }
      </call> 
      <script>
            STAXCode = RC
            certificateResult = STAXResult[0][1]
      </script>
      <script>
    <script>
            string_len=len(certificateResult)
            index_MD5=certificateResult.find("MD5:") 
            index_SHA1=certificateResult.find("SHA1:")
@@ -522,76 +522,76 @@
      </script>
 
     <message>'MD5 fingerprint for %s is  : %s ' %  (USER_2_CERT,MD5_fingerprint_cert2)</message>
     <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_2_CERT,SHA1_fingerprint_cert2)</message>
   <message>'MD5 fingerprint for %s is  : %s ' %  (USER_2_CERT,MD5_fingerprint_cert2)</message>
   <message>'SHA1 fingerprint for %s is  : %s ' %  (USER_2_CERT,SHA1_fingerprint_cert2)</message>
    <!--    Configure the mapper to map MD5 -->
    <message>'----- Configure the mapper to map MD5 fingerprint on the attribute description'</message>
  <!--   Configure the mapper to map MD5 -->
    <message>'----- Configure the mapper to map MD5 fingerprint on the attribute description'</message>
    <!--    Configure the mapper to map MD5 -->
  <!--   Configure the mapper to map MD5 -->
     <script>
            listAttr = []   
            listAttr.append('ds-cfg-certificate-fingerprint-attribute-type:description')
            listAttr.append('ds-cfg-certificate-fingerprint-algorithm:MD5')
     </script>    
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'DNToModify'          : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'listAttributes' : listAttr,
    'changetype'              : 'replace',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>          
   
   <!-- configure the user entries -->
   <message>'----- Configure the attribute description  for user %s ---' % USER_1_DN</message>
   <message>'----- description is the MD5 fingerprint  of the certificate %s ' % USER_1_CERT</message>
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_1_DN,
    'DNToModify'        : USER_1_DN,
    'attributeName'       : 'description',
    'newAttributeValue'  : MD5_fingerprint_cert1,
    'changetype'            : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
   <message> '----- Configure the attribute description  for user %s ---' % USER_2_DN</message>
   <message>'------ description is the SHA1 fingerprint  of the certificate %s ' % USER_2_CERT</message>
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'description',
    'newAttributeValue'  : SHA1_fingerprint_cert2,
    'changetype'            : 'add' ,
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>            
    <!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
      'dsKeyStorePassword'   :  CLIENT_STOREPASS,
       'dsUseSSL'             :  ' ',
       'dsUseSASLExternal'   :  ' ',
@@ -600,9 +600,9 @@
       'dsKeyStorePath'        : CLIENT_KEYSTORE,
       'dsReportAuthzID'   : ' ',
       'dsScope'                 : 'base',
       'expectedRC'           :  0 }
       'expectedRC'           :  0 }
     </call>    
     <script>
      STAXCode = RC
      ldapSearchResult = STAXResult[0][1]
@@ -612,15 +612,15 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- No bound expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -629,20 +629,20 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'            :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -651,9 +651,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
          STAXCode = RC
          ldapSearchResult = STAXResult[0][1]
@@ -663,14 +663,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -679,39 +679,39 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
        'expectedRC'               : 49 }
     </call>    
   <!--         Configure the mapper to map SHA1  fingerprint   -->
   <message>'----- Configure the mapper to map SHA1 fingerprint  on the attributes description'</message>
        <script>
   <!--     Configure the mapper to map SHA1  fingerprint   -->
   <message>'----- Configure the mapper to map SHA1 fingerprint  on the attributes description'</message>
       <script>
            listAttr = []   
            listAttr.append('ds-cfg-certificate-fingerprint-attribute-type:description')
            listAttr.append('ds-cfg-certificate-fingerprint-algorithm:SHA1')
      </script>      
 
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'DNToModify'          : 'cn=Fingerprint Mapper,cn=Certificate Mappers,cn=config',
    'listAttributes' : listAttr,
    'changetype'              : 'replace',
    'expectedRC'           :  0 }
    </call>
    'expectedRC'           :  0 }
    </call>
<!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2_DN -->
    <!-- bound as USER_2_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
      'dsKeyStorePassword'   :  CLIENT_STOREPASS,
       'dsUseSSL'             :  ' ',
       'dsUseSASLExternal'   :  ' ',
@@ -720,9 +720,9 @@
       'dsKeyStorePath'        : CLIENT_KEYSTORE,
       'dsReportAuthzID'   : ' ',
       'dsScope'                 : 'base',
       'expectedRC'           :  0 }
       'expectedRC'           :  0 }
     </call>    
     <script>
      STAXCode = RC
      ldapSearchResult = STAXResult[0][1]
@@ -732,14 +732,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- No bound expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -748,18 +748,18 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2__DN -->
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_2__DN -->
    <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'            :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -768,9 +768,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
          STAXCode = RC
          ldapSearchResult = STAXResult[0][1]
@@ -780,14 +780,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -798,41 +798,41 @@
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
     </call>    
     <!--  Restore initial users configuration -->   
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_1_DN,
    'DNToModify'        : USER_1_DN,
    'attributeName'       : 'description',
    'newAttributeValue'  : MD5_fingerprint_cert1,
    'changetype'            : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
  
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'description',
    'newAttributeValue'  : SHA1_fingerprint_cert2,
    'changetype'            : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>            
    <call function="'testCase_Postamble'"/>      
    </sequence>
  </testcase>
</sequence>
</function>
</stax>
opends/tests/functional-tests/testcases/security/client_auth/subject_attribute_mapper.xml
@@ -34,47 +34,47 @@
                               
       <!--- Test Case : setup -->
       <!---
    #@TestMarker              Setup Tests
    #@TestName                Set the SASL EXTERNAL mechanism to Subject attribute  to User Attribute
    #@TestIssue
    #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject attribute to User Attribute
    #@TestPreamble           none
    #@TestStep                  Map attributes from the certificate subject to attributes in user entries
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestMarker              Setup Tests
  #@TestName                Set the SASL EXTERNAL mechanism to Subject attribute  to User Attribute
  #@TestIssue
  #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject attribute to User Attribute
  #@TestPreamble           none
  #@TestStep                  Map attributes from the certificate subject to attributes in user entries
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName(' setup - subject_attribute_mapper')">
      <sequence>
    <sequence>
      <call function="'testCase_Preamble'"/>
      <message>
             '----  Configure the SASL EXTERNAL mechanism with Subject Attribute to User Attribute mapper -----'
      </message>
      </message>
      <call function="'modifyAnAttribute'">
          { 'dsInstanceHost'       :  DIRECTORY_INSTANCE_HOST ,
             'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
             'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
             'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
             'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
             'DNToModify'           :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'DNToModify'          :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'attributeName'        : 'ds-cfg-certificate-mapper-dn',
             'newAttributeValue'  : 'cn=Subject Attribute to User Attribute,cn=Certificate Mappers,cn=config',
             'changetype' : 'replace',
             'expectedRC'           :  0 }
             'expectedRC'           :  0 }
      </call>
   
     <message>
             '----  Configure the Subject Attribute to User Attribute mapper -----'
      </message>
      </message>
     <script>
             listAttr = []  
             listAttr.append('cn=ds-cfg-certificate-subject-attribute-mapping:cn:cn')
             listAttr.append('cn=ds-cfg-certificate-subject-attribute-mapping:e:mail')
      </script>
             listAttr.append('cn=ds-cfg-certificate-subject-attribute-mapping:e:mail')
      </script>
      <call function="'testCase_Postamble'"/>
    </sequence>
@@ -82,16 +82,16 @@
  
  
<!---
    #@TestMarker             Subject Attributes mapping to user attribute
    #@TestName               Use only one attribute mapping
    #@TestIssue
    #@TestPurpose            Map attributes from the certificate subject to attributes in user entries
  #@TestMarker             Subject Attributes mapping to user attribute
  #@TestName               Use only one attribute mapping
  #@TestIssue
  #@TestPurpose            Map attributes from the certificate subject to attributes in user entries
    #@TestStep                  the subject certificate is defined with the format : uid=client-cert-1,SUFFIX
    #@TestStep                  The mapping will be done on the attribute uid from the cerficate subject
  #@TestStep                  The mapping will be done on the attribute uid from the cerficate subject
    #@TestStep                  and the attribute 'description' of the user's entry
    #@TestPreamble          none
    #@TestPostamble         none
    #@TestResult               Success if OpenDS returns 0 for all operations
  #@TestPreamble          none
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName('subject attribute mapping')">
@@ -99,71 +99,71 @@
    <call function="'testCase_Preamble'"/>
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
    <message>
             '----  Configure the Subject Attribute to User Attribute mapper -----'
      </message>
      <message>'---- Add a new mapping rule from attribute "uid"  from certificate subject and attribute "description" of the user entry'</message>
      </message>
      <message>'---- Add a new mapping rule from attribute "uid"  from certificate subject and attribute "description" of the user entry'</message>
      <call function="'modifyAnAttribute'">
          { 'dsInstanceHost'       :  DIRECTORY_INSTANCE_HOST ,
             'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
             'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
             'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
             'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
             'DNToModify'           :  'cn=Subject Attribute to User Attribute,cn=Certificate Mappers,cn=config',
             'DNToModify'          :  'cn=Subject Attribute to User Attribute,cn=Certificate Mappers,cn=config',
             'attributeName'        : 'ds-cfg-certificate-subject-attribute-mapping',
             'newAttributeValue'  : 'uid:description',
             'changetype' : 'replace',
             'expectedRC'           :  0 }
             'expectedRC'           :  0 }
      </call>
    <message>'----- Configure the attribute description  for user %s ---' % USER_1_DN</message>
    <message>'----- the attribute description will map with the attribute "uid" of the certificate subject'</message>
     
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : USER_1_DN,
    'DNToModify'          : USER_1_DN,
    'attributeName'         : 'description',
    'newAttributeValue'    : USER_1_CERT,
    'changetype'              : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>      
     <message>'----- Configure the attribute description  for user %s ---' % USER_2_DN</message>
     <message>'----- the attribute description contains invalid value'</message>
     <message>'----- it will not map with the attribute "uid" of the certificate subject'</message>
   <message>'----- it will not map with the attribute "uid" of the certificate subject'</message>
 
 
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'description',
    'newAttributeValue'  : 'bad-certificate',
    'changetype'            : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
        
    <!--  Check mapping is working -->         
 
   <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
   <!-- bound as USER_1_DN -->
   <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
   <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -172,9 +172,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
         'expectedRC'           :  0 }
         'expectedRC'           :  0 }
     </call>    
     <script>
           STAXCode = RC
           ldapSearchResult = STAXResult[0][1]
@@ -184,14 +184,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
   <!-- No mapping expected -->
   <!-- No mapping expected -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -200,19 +200,19 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
   <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
   <!-- bound as USER_1_DN -->
   <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
   <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -221,9 +221,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
           STAXCode = RC
           ldapSearchResult = STAXResult[0][1]
@@ -233,14 +233,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
   <!-- No mapping expected -->
   <!-- No mapping expected -->
     <call function="'ldapSearchWithScript'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
          'dsFilter'        : 'objectclass=*'   ,
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -249,11 +249,11 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <call function="'testCase_Postamble'"/>      
    </sequence>
  </testcase>
opends/tests/functional-tests/testcases/security/client_auth/subject_dn_mapper.xml
@@ -34,37 +34,37 @@
                               
       <!--- Test Case : setup -->
       <!---
    #@TestMarker              Setup Tests
    #@TestName                Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
    #@TestIssue
    #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
    #@TestPreamble           none
    #@TestStep                  Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
    #@TestStep                  keep the default ds-cfg-certificate-subject-attribute-type which is ds-certificate-subject-dn
    #@TestPostamble          none
    #@TestResult                Success if OpenDS returns 0 for all operations
  #@TestMarker              Setup Tests
  #@TestName                Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
  #@TestIssue
  #@TestPurpose            Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
  #@TestPreamble           none
  #@TestStep                  Set the SASL EXTERNAL mechanism to Subject DN to User Attribute
  #@TestStep                  keep the default ds-cfg-certificate-subject-attribute-type which is ds-certificate-subject-dn
  #@TestPostamble          none
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
    
  <testcase name="getTestCaseName(' setup - Subject_dn_mapper')">
   <sequence>
    <call function="'testCase_Preamble'"/>
    <message>
             '----  Configure the SASL EXTERNAL mechanism -----'
    </message>
    </message>
    <call function="'modifyAnAttribute'">
          { 'dsInstanceHost'       :  DIRECTORY_INSTANCE_HOST ,
             'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
             'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
             'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
             'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
             'DNToModify'           :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'DNToModify'          :  'cn=EXTERNAL,cn=SASL Mechanisms,cn=config',
             'attributeName'        : 'ds-cfg-certificate-mapper-dn',
             'newAttributeValue'  : 'cn=Subject DN to User Attribute,cn=Certificate Mappers,cn=config',
             'changetype' : 'replace',
             'expectedRC'           :  0 }
             'expectedRC'           :  0 }
    </call>
 
    <call function="'testCase_Postamble'"/>
@@ -93,28 +93,28 @@
    <call function="'testCase_Preamble'"/>
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
    <message>'----- Configure the attribute ds-certificate-subject-dn  for user %s ---' % USER_1_DN</message>
    <message>'----- ds-certificate-subject-dn is the subject of the certificate %s '% USER_1_CERT</message>
     
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'     : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'        : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'       : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'            : USER_1_DN,
    'DNToModify'          : USER_1_DN,
    'attributeName'         : 'ds-certificate-subject-dn',
    'newAttributeValue'    : USER_1_DN,
    'changetype'              : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>          
   
   <message> '----- Configure the attribute ds-certificate-subject-dn  for user %s ---' % USER_2_DN</message>
   <message>'------ ds-certificate-subject-dn contains an invalid DN'</message>
 
@@ -122,26 +122,26 @@
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'         : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'       : 'ds-certificate-subject-dn',
    'newAttributeValue'  : 'uid=bad-certificate',
    'changetype'            : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>               
  
    <!--  Check mapping is working -->         
    <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <!-- bound as USER_1_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
      'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
      'dsKeyStorePassword'   :  CLIENT_STOREPASS,
       'dsUseSSL'             :  ' ',
       'dsUseSASLExternal'   :  ' ',
@@ -150,9 +150,9 @@
       'dsKeyStorePath'        : CLIENT_KEYSTORE,
       'dsReportAuthzID'   : ' ',
       'dsScope'                 : 'base',
       'expectedRC'           :  0 }
       'expectedRC'           :  0 }
     </call>    
     <script>
      STAXCode = RC
      ldapSearchResult = STAXResult[0][1]
@@ -162,14 +162,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
    <!-- No bound expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -178,18 +178,18 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'               : 49 }
      'expectedRC'               : 49 }
     </call>    
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
    <!-- bound as USER_1_DN -->
    <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'            :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -198,9 +198,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
          STAXCode = RC
          ldapSearchResult = STAXResult[0][1]
@@ -210,14 +210,14 @@
                'mainString'    : ldapSearchResult ,
                'nbExpected'    : 1
             }
    </call>
    </call>
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -226,38 +226,38 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
      'expectedRC'               : 49 }
    'expectedRC'               : 49 }
     </call>    
     <!--  Restore initial users configuration -->   
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'      : USER_1_DN,
    'DNToModify'    : USER_1_DN,
    'attributeName' : 'ds-certificate-subject-dn',
    'newAttributeValue'  : USER_1_DN,             
    'changetype' : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
     </call>             
 
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'      : USER_2_DN,
    'DNToModify'    : USER_2_DN,
    'attributeName' : 'ds-certificate-subject-dn',
    'newAttributeValue'  : 'uid=bad-certificate',       
    'changetype' : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
     </call>             
    <call function="'testCase_Postamble'"/>      
    </sequence>
  </testcase>
@@ -279,41 +279,41 @@
    
  <testcase name="getTestCaseName('subject dn mapping on attribut description')">
    <sequence>
    <call function="'testCase_Preamble'"/>
    <!-- Load in the local shared python objects from libraries -->
  <!-- Load in the local shared python objects from libraries -->
      <call function="'loadVariables'">
     </call>
   </call>
    <message>'----- Configure  the mapping to be done on the attribute description' </message>
    <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : 'cn=Subject DN to User Attribute,cn=Certificate Mappers,cn=config',
    'DNToModify'        : 'cn=Subject DN to User Attribute,cn=Certificate Mappers,cn=config',
    'attributeName'      : 'ds-cfg-certificate-subject-attribute-type',
    'newAttributeValue'  : 'description',
    'changetype' : 'replace',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>
    <message>'----- Configure the attribute ds-certificate-subject-dn  for user %s ---' % USER_1_DN</message>      
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'      : USER_1_DN,
    'DNToModify'    : USER_1_DN,
    'attributeName' : 'description',
    'newAttributeValue'  : 'bad_cert',
    'changetype' : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>
   <message> '----- Configure the attribute ds-certificate-subject-dn  for user %s ---' % USER_2_DN</message>
   <message>'------ ds-certificate-subject-dn contains an invalid DN'</message>
@@ -321,27 +321,27 @@
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'          : USER_2_DN,
    'DNToModify'        : USER_2_DN,
    'attributeName'      : 'description',
    'newAttributeValue'  : USER_2_DN,
    'changetype' : 'add',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>          
  
 
    <!--  Check mapping is working -->              
     <message>'--- Check SSL communication with SASL EXTERNAL authentication'</message>
     <!-- No mapping expected -->
     <!-- No mapping expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -350,16 +350,16 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'                : 49 }
      'expectedRC'                : 49 }
     </call>    
     <!-- bound as USER_2_DN -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_SSL_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseSSL'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -368,9 +368,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
       STAXCode = RC
       ldapSearchResult = STAXResult[0][1]
@@ -380,16 +380,16 @@
         'mainString'    : ldapSearchResult ,
         'nbExpected'    : 1
       }
    </call>
    </call>
     <message>'--- Check StartTLS communication with SASL EXTERNAL authentication'</message>
     <!-- No mapping expected -->
   <!-- No mapping expected -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -398,16 +398,16 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base',
          'expectedRC'                : 49 }
      'expectedRC'                : 49 }
     </call>    
     <!-- bound as USER_2_DN  -->
     <call function="'ldapSearchWithScript'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
      'dsFilter'        : 'objectclass=*'   ,
  { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsBaseDN'         : DIRECTORY_INSTANCE_SFX,
    'dsFilter'    : 'objectclass=*'  ,
          'dsKeyStorePassword'   :  CLIENT_STOREPASS,
          'dsUseStartTLS'             :  ' ',
          'dsUseSASLExternal'   :  ' ',
@@ -416,9 +416,9 @@
          'dsKeyStorePath'        : CLIENT_KEYSTORE,
          'dsReportAuthzID'   : ' ',
          'dsScope'                 : 'base' ,
          'expectedRC'           :  0 }
          'expectedRC'           :  0 }
     </call>    
     <script>
         STAXCode = RC
         ldapSearchResult = STAXResult[0][1]
@@ -428,38 +428,38 @@
           'mainString'    : ldapSearchResult ,
           'nbExpected'    : 1
         }
    </call>
    </call>
    <!--  Restore initial users configuration -->   
     <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'      : USER_1_DN,
    'DNToModify'    : USER_1_DN,
    'attributeName' : 'description',
    'newAttributeValue'  : 'bad_cert',
    'changetype' : 'delete',
    'expectedRC'           :  0 }
    'expectedRC'           :  0 }
    </call>             
    <call function="'modifyAnAttribute'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
        'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
        'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
        'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
        'DNToModify'      : USER_2_DN,
        'attributeName' : 'description',
        'newAttributeValue'  :  USER_2_DN,
        'changetype' : 'delete',
        'expectedRC'           :  0 }
  <call function="'modifyAnAttribute'">
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
    'dsInstancePort'       : DIRECTORY_INSTANCE_PORT ,
    'dsInstanceDn'          : DIRECTORY_INSTANCE_DN ,
    'dsInstancePswd'     : DIRECTORY_INSTANCE_PSWD ,
    'DNToModify'    : USER_2_DN,
    'attributeName' : 'description',
    'newAttributeValue'  :  USER_2_DN,
    'changetype' : 'delete',
        'expectedRC'           :  0 }
     </call>             
 
    <call function="'testCase_Postamble'"/>      
    </sequence>
@@ -469,4 +469,4 @@
</function>
</stax>
opends/tests/functional-tests/testcases/security/jks/security_jks.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
       
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
     
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/jks/security_setup_jks.xml' % (TESTS_DIR)"/>
@@ -70,7 +70,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
    
          <call function="'testSuite_Postamble'"/>
opends/tests/functional-tests/testcases/security/jks/security_setup_jks.xml
@@ -68,18 +68,18 @@
               'Security: JKS: Preamble Step 1. Generating Server Certicate'
            </message>
            <!-- create a server certificate -->           
           <call function="'genCertificate'">
            { 'certAlias'        : 'server-cert' ,
               'dname'           : "cn=client,O=Sun Microsystems,C=US",
               'keystore'        : 'keystore',
               'storepass'       : 'servercert',
               'keypass'         : 'servercert',
               'storetype'         : 'JKS' }
               'storetype'       : 'JKS' }
           </call>  
            <!--- Self-Sign Server Cert -->
            <message>
@@ -91,8 +91,8 @@
              'storepass'       : 'servercert',
              'keypass'         : 'servercert',
              'keystore'        : 'keystore',
              'storetype'      : 'JKS' }
            </call>
              'storetype'       : 'JKS' }
            </call>
   
@@ -120,7 +120,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*' ,
                'extraParams'      : '-Z -X' }
                'extraParams'       : '-Z -X' }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/jks/security_teardown_jks.xml
@@ -79,7 +79,7 @@
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD }
            </call>
            </call>
            <!--- Remove JKS Keystore -->
            <message>
opends/tests/functional-tests/testcases/security/pkcs12/security_pkcs12.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
            
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
  
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/pkcs12/security_setup_pkcs12.xml' % (TESTS_DIR)"/>
@@ -70,7 +70,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
    
        </sequence>
opends/tests/functional-tests/testcases/security/pkcs12/security_setup_pkcs12.xml
@@ -75,7 +75,7 @@
               'keystore'        : 'keystore',
               'storepass'       : 'servercert',
               'keypass'         : 'servercert',
               'storetype'       : 'PKCS12' }
               'storetype'     : 'PKCS12' }
            </call>
            <!--- Self-Sign Server Cert -->
@@ -88,8 +88,8 @@
              'storepass'        : 'servercert',
              'keypass'          : 'servercert',
              'keystore'         : 'keystore',
              'storetype'    : 'PKCS12' }
            </call>
              'storetype'     : 'PKCS12' }
            </call>
            <!--- Configure PKCS12 Keystore -->
            <message>
@@ -101,7 +101,7 @@
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD,
                'keystoreType'     : 'PKCS12' }
        'keystoreType'     : 'PKCS12' }
            </call>
@@ -117,7 +117,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*' ,
                'extraParams'      : '-Z -X' }
                'extraParams'       : '-Z -X' }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/pkcs12/security_teardown_pkcs12.xml
@@ -84,9 +84,9 @@
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD,
                'keystoreType'     : 'PKCS12' }
            </call>
        'keystoreType'     : 'PKCS12' }
            </call>
        
            <!--- Remove PKCS12 Keystore -->
            <message>
opends/tests/functional-tests/testcases/security/pwd_policy/security_force_pwd_change.xml
@@ -96,7 +96,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 19 }
                'expectedRC'       : 19 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -262,7 +262,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -300,7 +300,7 @@
                'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
                'attrToBeCompared'    : 'pager:+1 999 555-1212',
                'entryToBeCompared'   : 'uid=mdog,ou=people,ou=password tests,o=Pwd Policy Tests,dc=example,dc=com' ,
                'expectedRC'          : 16 }
                'expectedRC'          : 16 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -358,7 +358,7 @@
                'dsInstancePswd'      : 'pizza' ,
                'attrToBeCompared'    : 'l:Sunnyvale',
                'entryToBeCompared'   : 'uid=mdog,ou=people,ou=password tests,o=Pwd Policy Tests,dc=example,dc=com' ,
                'expectedRC'          : 49 }
                'expectedRC'          : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -381,7 +381,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 19 }
                'expectedRC'       : 19 }
            </call>
            <call function="'testCase_Postamble'"/>
@@ -419,7 +419,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base' ,
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <message>
@@ -608,7 +608,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/pwd_policy/security_force_pwd_change_all_users.xml
@@ -100,7 +100,7 @@
                'dsBaseDN'         : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*'  ,
                'extraParams'      : '-s base',
                'expectedRC'       : 49 }
                'expectedRC'       : 49 }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/pwd_policy/security_mult_pwd_policies.xml
@@ -174,13 +174,13 @@
            </iterate>
            <call function="'SearchObject'">
        { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
          'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
          'dsInstanceDn'     : 'uid=tclow,ou=people,ou=password tests,o=Pwd Policy Tests,dc=example,dc=com' ,
          'dsInstancePswd'   : 'cardreader' ,
          'dsBaseDN'         : 'dc=example,dc=com' ,
          'dsFilter'         : 'objectclass=*'  ,
          'extraParams'      : '-s base' }
    { 'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
      'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
      'dsInstanceDn'     : 'uid=tclow,ou=people,ou=password tests,o=Pwd Policy Tests,dc=example,dc=com' ,
      'dsInstancePswd'   : 'cardreader' ,
      'dsBaseDN'         : 'dc=example,dc=com' ,
      'dsFilter'         : 'objectclass=*'  ,
      'extraParams'       : '-s base' }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/pwd_policy/security_pwd_policy.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/pwd_policy/security_setup_pwd_policy.xml' % (TESTS_DIR)"/>
@@ -113,7 +113,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
    
          <call function="'testSuite_Postamble'"/>
    
opends/tests/functional-tests/testcases/security/pwd_policy_root/security_pwd_policy_root.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -62,7 +62,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
    
        </sequence>
opends/tests/functional-tests/testcases/security/pwd_storage/security_pwd_storage.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
@@ -49,7 +49,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/pwd_storage/security_setup_pwd_storage.xml' % (TESTS_DIR)"/>
@@ -111,7 +111,7 @@
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
    
opends/tests/functional-tests/testcases/security/pwd_validator/security_pwd_validator.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
    
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
        <import machine="STAF_LOCAL_HOSTNAME"
          file="'%s/testcases/security/pwd_validator/security_setup_pwd_validator.xml' % (TESTS_DIR)"/>
@@ -102,7 +102,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
          
        </sequence>
opends/tests/functional-tests/testcases/security/sasl/security_sasl.xml
@@ -39,7 +39,7 @@
  
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
  
          <import machine="STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/security/sasl/security_setup_sasl.xml' % (TESTS_DIR)"/>
@@ -82,7 +82,7 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
            
        </sequence>
opends/tests/functional-tests/testcases/security/security_cleanup.xml
@@ -37,10 +37,10 @@
      
        <sequence>
          <block name="'Block DS Process Stop'">
          <block name="'Block DS Process Stop'">
          <!--- Stop DS -->
            <sequence>
        <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -58,32 +58,32 @@
                    'result'     : STAXResult }
              </call>
            </sequence>
        </sequence>
          <!--- End Block DS Process Stop -->
          </block>
          <block name="'Block Remove DS Topology'">
          <!-- Remove  the topology created for the test suite -->
            <sequence>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>
          <!-- End Block Remove DS Topology-->
          </block>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/security/security_setup.xml
@@ -38,32 +38,32 @@
        <sequence>
          <block name="'Block Create DS Topology'">
          <!-- Create the topology necessary to the test group/suite -->
            <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
        <call function="'createTopology'">
          { 'initialiseInstance' : True }
        </call>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
            </sequence>      
          <!--- End Block Create DS Topology -->
          </block>
          <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
      <block name="'Block DS Process Active'">
          <!--- Start DS -->
            <sequence>
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -82,13 +82,13 @@
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
              </call>
            </sequence>
          <!--- End Block DS Process Active -->
          </block>
          </block>
        </sequence>        
      </block>
            
opends/tests/functional-tests/testcases/security/startTLS/security_setup_startTLS.xml
@@ -48,7 +48,7 @@
               'keystore'        : 'keystore',
               'storepass'       : 'servercert',
               'keypass'         : 'servercert',
               'storetype'         : 'JKS' }
               'storetype'       : 'JKS' }
           </call>  
            <!--- Self-Sign Server Cert -->
@@ -62,8 +62,8 @@
              'storepass'       : 'servercert',
              'keypass'         : 'servercert',
              'keystore'        : 'keystore',
              'storetype'      : 'JKS' }
            </call>
              'storetype'       : 'JKS' }
            </call>
   
            <!--- Configure JKS Keystore -->
@@ -91,7 +91,7 @@
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'   : 'dc=example,dc=com' ,
                'dsFilter'         : 'objectclass=*' ,
                'extraParams'      : '-q -X -s base' }
                'extraParams'       : '-q -X -s base' }
            </call>
            <call function="'testCase_Postamble'"/>
opends/tests/functional-tests/testcases/security/startTLS/security_startTLS.xml
@@ -33,13 +33,13 @@
    <sequence>
      <block name="'start-tls'">
        <sequence>
      <block name="'start-tls'">
        <sequence>
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='security'
              CurrentTestPath['group']='security'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
      
@@ -50,7 +50,7 @@
            file="'%s/testcases/security/security_setup.xml' % (TESTS_DIR)"/>
          <call function="'security_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
@@ -75,13 +75,13 @@
            file="'%s/testcases/security/security_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'security_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
        </sequence>
        </sequence>
      </block>
      </block>
        
    </sequence>
opends/tests/functional-tests/testcases/security/startTLS/security_teardown_startTLS.xml
@@ -61,8 +61,8 @@
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD }
            </call>
            </call>
            <!--- Remove JKS Keystore -->
            <message>
               'Security: TLS: Postamble Step 3. Removing JKS Keystore'