anchor.diff:  	    Config
       end.
   
  +init_v3_testcase(Conf) ->
  +    Conf2 = init_v3_agent(Conf),
  +    Conf3 = try init_v3_manager(Conf2)
  +            catch AC:AE:AS ->
  +                    %% Ouch we need to clean up:
  +                    %% The init_agent starts an agent node!
  +                    ?IPRINT("init_v3_testcase -> failed init v3 manager:"
  +                            "~n      AC: ~p"
  +                            "~n      AE: ~p"
  +                            "~n      AS: ~p", [AC, AE, AS]),
  +                    init_per_testcase_fail_agent_cleanup(Conf),
  +                    throw({skip, {manager_init_failed, AC, AE}})
  +            end,
  +    Conf4 = try init_mgr_v3_user(Conf3)
  +            catch MC:ME:MS ->
  +                    %% Ouch we need to clean up:
  +                    %% The init_agent starts an agent node!
  +                    %% The init_magager starts an manager node!
  +                    ?IPRINT("init_v3_testcase -> failed init v3 manager user:"
  +                            "~n      MC: ~p"
  +                            "~n      ME: ~p"
  +                            "~n      MS: ~p", [MC, ME, MS]),
  +                    init_per_testcase_fail_manager_cleanup(Conf2),
  +                    init_per_testcase_fail_agent_cleanup(Conf2),
  +                    throw({skip, {manager_user_init_failed, MC, ME}})
  +            end,
  +    init_mgr_v3_user_data(Conf4).
  +
   init_per_testcase_fail_manager_cleanup(Conf) ->
       (catch fin_manager(Conf)).
   
  
positive.code: 
  %%======================================================================
  
  simple_v3_exchange(doc) ->
      ["Simple message exchange using v3 messages"];
  simple_v3_exchange(suite) -> [];
  simple_v3_exchange(Config) when is_list(Config) ->
      ?IPRINT("starting with Config: "
              "~n      ~p", [Config]),
  
negative.code:     ?line {ok, User} = mgr_user_start(Node),
      ?DBG("start_mgr_user -> User: ~p", [User]),
      link(User),
      
      [{user_pid, User} | Conf].
  
  init_mgr_v3_user(Conf) ->
      ?IPRINT("init_mgr_v3_user -> entry with"
              "~n   Conf: ~p", [Conf]),
  
      Node   = ?config(manager_node, Conf),
      %% UserId = ?config(user_id, Conf),
  
      ?line {ok, User} = mgr_user_start(Node),
      ?IPRINT("start_mgr_v3_user -> User: ~p", [User]),
      link(User),
  
      EngineID    = "agentEngine",
      AuthAlg     = ?config(auth_alg, Conf),
      SecName     = select_secname_from_authalg(AuthAlg),% "authSHA224",
      AuthKey     = select_authkey_from_authalg(AuthAlg),% "passwd_sha224xxxxxxxxxxxxxxx",
      Credentials =
        [ {auth,     select_auth_proto(AuthAlg)},
          {auth_key, AuthKey}
        ],
      ?line ok = mgr_register_usm_user(Node, EngineID, SecName, Credentials),
      
      ?IPRINT("start_mgr_v3_user -> done"),
      [{user_pid, User} | Conf].
  
  select_secname_from_authalg(md5) ->
      "authMD5";
  select_secname_from_authalg(sha) ->
      "authSHA";
  select_secname_from_authalg(sha224) ->
      "authSHA224";
  select_secname_from_authalg(sha256) ->
      "authSHA256";
  select_secname_from_authalg(sha384) ->
      "authSHA384";
  select_secname_from_authalg(sha512) ->
      "authSHA512".
  
  select_authkey_from_authalg(md5) ->
      "passwd_md5xxxxxx";
  select_authkey_from_authalg(sha) ->
      "passwd_shaxxxxxxxxxx";
  select_authkey_from_authalg(sha224) ->
      "passwd_sha224xxxxxxxxxxxxxxx";
  select_authkey_from_authalg(sha256) ->
      "passwd_sha256xxxxxxxxxxxxxxxxxxx";
  select_authkey_from_authalg(sha384) ->
      "passwd_sha384xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
  select_authkey_from_authalg(sha512) ->
      "passwd_sha512xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx".
  
  
  fin_mgr_user(Conf) ->
      User = ?config(user_pid, Conf),
  