#include <string.h>
#include <rpc/rpc.h>
#include <rpc/xdr.h>
#include "nfs4.h"
#include "fsal_internal.h"
#include "fsal_convert.h"
#include "fsal_common.h"
#include "nfs_proto_functions.h"
#include "fsal_nfsv4_macros.h"
Go to the source code of this file.
Define Documentation
#define FSAL_RENAME_IDX_OP_GETATTR_NEW 4 |
#define FSAL_RENAME_IDX_OP_GETATTR_OLD 6 |
#define FSAL_RENAME_IDX_OP_PUTFH_NEW 2 |
#define FSAL_RENAME_IDX_OP_PUTFH_OLD 0 |
#define FSAL_RENAME_IDX_OP_RENAME 3 |
#define FSAL_RENAME_IDX_OP_RESTOREFH 5 |
#define FSAL_RENAME_IDX_OP_SAVEFH 1 |
#define FSAL_RENAME_NB_OP_ALLOC 7 |
Function Documentation
FSAL_rename: Change name and/or parent dir of a filesystem object.
- Parameters:
-
old_parentdir_handle | (input): Source parent directory of the object is to be moved/renamed. |
p_old_name | (input): Pointer to the current name of the object to be moved/renamed. |
new_parentdir_handle | (input): Target parent directory for the object. |
p_new_name | (input): Pointer to the new name for the object. |
p_context | (input): Authentication context for the operation (user,...). |
src_dir_attributes | (optionnal input/output): Post operation attributes for the source directory. As input, it defines the attributes that the caller wants to retrieve (by positioning flags into this structure) and the output is built considering this input (it fills the structure according to the flags it contains). May be NULL. |
tgt_dir_attributes | (optionnal input/output): Post operation attributes for the target directory. As input, it defines the attributes that the caller wants to retrieve (by positioning flags into this structure) and the output is built considering this input (it fills the structure according to the flags it contains). May be NULL. |
- Returns:
- Major error codes :
- ERR_FSAL_NO_ERROR (no error)
- ERR_FSAL_STALE (a parent directory handle does not address an existing object)
- ERR_FSAL_NOTDIR (a parent directory handle does not address a directory)
- ERR_FSAL_NOENT (the object designated by p_old_name does not exist)
- ERR_FSAL_NOTEMPTY (the target object is a non empty directory)
- ERR_FSAL_XDEV (tried to move an object across different filesystems)
- ERR_FSAL_FAULT (a NULL pointer was passed as mandatory argument)
- Other error codes can be returned : ERR_FSAL_ACCESS, ERR_FSAL_IO, ...
Definition at line 80 of file FSAL_PROXY/fsal_rename.c.