anchor.diff:  
       #atom{value = ?VOK}.
   
  +
  +%% change_file_group/3
  +%% ====================================================================
  +%% @doc Changes file's group owner.
  +%%      Operation currently not supported.
  +%% @end
  +-spec change_file_group(FullFileName :: string(), NewGID :: non_neg_integer(), NewGName :: string()) ->
  +    #atom{} | no_return().
  +%% ====================================================================
   change_file_group(_FullFileName, _GID, _GName) ->
       ?debug("change_file_group(FullFileName: ~p, GID: ~p, GName: ~p)", [_FullFileName, _GID, _GName]),
       #atom{value = ?VENOTSUP}.
   
  +
  +%% change_file_perms/2
  +%% ====================================================================
  +%% @doc Changes file permissions.
  +%% @end
  +-spec change_file_perms(FullFileName :: string(), Perms :: non_neg_integer()) ->
  +    #atom{} | no_return().
  +%% ====================================================================
   change_file_perms(FullFileName, Perms) ->
       ?debug("change_file_perms(FullFileName: ~p, Perms: ~p)", [FullFileName, Perms]),
       {ok, UserDoc} = fslogic_objects:get_user(),
  
positive.code:     end.
  
  
  rename_file(FullFileName, FullNewFileName) ->
      ?debug("rename_file(FullFileName: ~p, FullNewFileName: ~p)", [FullFileName, FullNewFileName]),
      {ok, UserDoc} = fslogic_objects:get_user(),
  
negative.code: 
      #atom{value = ?VOK}.
  
  
  %% get_file_attr/2
  %% ====================================================================
  %% @doc Gets file's attributes.
  %% @end
  -spec get_file_attr(FullFileName :: string()) ->
      #fileattr{} | no_return().
  %% ====================================================================
  get_file_attr(FileDoc = #veil_document{record = #file{}}) ->
      #veil_document{record = #file{} = File, uuid = FileUUID} = FileDoc,
      Type = fslogic_file:normalize_file_type(protocol, File#file.type),
  