nfs-ganesha 1.4
Defines

fsal_nfsv4_macros.h File Reference

Usefull macros to manage NFSv4 call from FSAL_PROXY. More...

#include <rpc/rpc.h>
#include <rpc/clnt.h>
#include <rpc/xdr.h>
#include "nfs4.h"
#include "fsal.h"
#include "fsal_internal.h"
#include "fsal_convert.h"
#include "fsal_common.h"

Go to the source code of this file.

Defines

#define TIMEOUTRPC   {2, 0}
#define PRINT_HANDLE(tag, handle)
#define COMPOUNDV4_ARG_FREE   do {gsh_free(argcompound.argarray_val);} while( 0 )
#define COMPOUNDV4_ARG_ADD_OP_PUTROOTFH(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_OPEN_CONFIRM(argcompound, __openseqid, __other, __seqid)
#define COMPOUNDV4_ARG_ADD_OP_OPEN_NOCREATE(argcompound, __seqid, inclientid, inaccess, inname, __owner_val, __owner_len)
#define COMPOUNDV4_ARG_ADD_OP_CLOSE(argcompound, __stateid)
#define COMPOUNDV4_ARG_ADD_OP_GETATTR(argcompound, bitmap)
#define COMPOUNDV4_ARG_ADD_OP_SETATTR(argcompound, inattr)
#define COMPOUNDV4_ARG_ADD_OP_GETFH(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_PUTFH(argcompound, nfs4fh)
#define COMPOUNDV4_ARG_ADD_OP_LOOKUP(argcompound, name)
#define COMPOUNDV4_ARG_ADD_OP_LOOKUPP(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_SETCLIENTID(argcompound, inclient, incallback)
#define COMPOUNDV4_ARG_ADD_OP_SETCLIENTID_CONFIRM(argcompound, inclientid, inverifier)
#define COMPOUNDV4_ARG_ADD_OP_ACCESS(argcompound, inaccessflag)
#define COMPOUNDV4_ARG_ADD_OP_READDIR(argcompound, incookie, innbentry, inverifier, inbitmap)
#define COMPOUNDV4_ARG_ADD_OP_OPEN_CREATE(argcompound, inname, inattrs, inclientid, __owner_val, __owner_len)
#define COMPOUNDV4_ARG_ADD_OP_MKDIR(argcompound, inname, inattrs)
#define COMPOUNDV4_ARG_ADD_OP_SYMLINK(argcompound, inname, incontent, inattrs)
#define COMPOUNDV4_ARG_ADD_OP_LINK(argcompound, inname)
#define COMPOUNDV4_ARG_ADD_OP_REMOVE(argcompound, inname)
#define COMPOUNDV4_ARG_ADD_OP_RENAME(argcompound, inoldname, innewname)
#define COMPOUNDV4_ARG_ADD_OP_READLINK(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_SAVEFH(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_RESTOREFH(argcompound)
#define COMPOUNDV4_ARG_ADD_OP_READ(argcompound, instateid, inoffset, incount)
#define COMPOUNDV4_ARG_ADD_OP_WRITE(argcompound, instateid, inoffset, indatabuffval, indatabufflen)
#define COMPOUNDV4_EXECUTE(pcontext, argcompound, rescompound, rc)
#define COMPOUNDV4_EXECUTE_SIMPLE(pcontext, argcompound, rescompound)

Detailed Description

Usefull macros to manage NFSv4 call from FSAL_PROXY.

Author:
Author:
deniel
Date:
06/05/2007
Version:
$Revision$

Definition in file fsal_nfsv4_macros.h.


Define Documentation

#define COMPOUNDV4_ARG_ADD_OP_ACCESS (   argcompound,
  inaccessflag 
)
Value:
do {                                                                                                                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_ACCESS ;                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opaccess.access = inaccessflag ; \
  argcompound.argarray.argarray_len += 1 ;                                                                           \
} while ( 0 )

Definition at line 147 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_CLOSE (   argcompound,
  __stateid 
)
Value:
do {                                                                                                                                             \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_CLOSE ;                                                   \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opclose.seqid = __stateid.seqid +1 ;                         \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opclose.open_stateid.seqid = __stateid.seqid ;               \
  memcpy( argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opclose.open_stateid.other, __stateid.other, 12 ) ;  \
  argcompound.argarray.argarray_len += 1 ;                                                                                                       \
} while( 0 )

Definition at line 80 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_GETATTR (   argcompound,
  bitmap 
)
Value:
do {                                                                                                                  \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_GETATTR ;                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opgetattr.attr_request = bitmap ; \
  argcompound.argarray.argarray_len += 1 ;                                                                            \
} while( 0 )

Definition at line 89 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_GETFH (   argcompound)
Value:
do {                                                                                                          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_GETFH ;                \
  argcompound.argarray.argarray_len += 1 ;                                                                    \
} while( 0 )

Definition at line 104 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_LINK (   argcompound,
  inname 
)
Value:
do {                                                                                                          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_LINK ;                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.oplink.newname = inname ; \
  argcompound.argarray.argarray_len += 1 ;                                                                    \
} while ( 0 )

Definition at line 203 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_LOOKUP (   argcompound,
  name 
)
Value:
do {                                                                                                          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_LOOKUP ;               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.oplookup.objname = name ; \
  argcompound.argarray.argarray_len += 1 ;                                                                    \
} while ( 0 )

Definition at line 117 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_LOOKUPP (   argcompound)
Value:
do {                                                                                             \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_LOOKUPP ; \
  argcompound.argarray.argarray_len += 1 ;                                                       \
} while ( 0 )

Definition at line 124 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_MKDIR (   argcompound,
  inname,
  inattrs 
)
Value:
do {                                                                                                                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_CREATE ;                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.objtype.type = NF4DIR ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.objname = inname ;      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.createattrs = inattrs ; \
  argcompound.argarray.argarray_len += 1 ;                                                                           \
} while ( 0 )

Definition at line 184 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_OPEN_CONFIRM (   argcompound,
  __openseqid,
  __other,
  __seqid 
)
Value:
do {                                                                                                                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_OPEN_CONFIRM ;                                          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen_confirm.seqid = __seqid ;                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen_confirm.open_stateid.seqid = __openseqid ;          \
  memcpy( argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen_confirm.open_stateid.other, __other, 12 ) ; \
  argcompound.argarray.argarray_len += 1 ;                                                                                                     \
} while( 0 )

Definition at line 56 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_OPEN_CREATE (   argcompound,
  inname,
  inattrs,
  inclientid,
  __owner_val,
  __owner_len 
)
Value:
do {                                                                                                                                                    \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_OPEN ;                                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.seqid = 0 ;                                                  \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.share_access = OPEN4_SHARE_ACCESS_BOTH ;                     \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.share_deny = OPEN4_SHARE_DENY_NONE ;                         \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.clientid = inclientid ;                                \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.owner.owner_len =  __owner_len ;                       \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.owner.owner_val =  __owner_val ;                       \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.openhow.opentype = OPEN4_CREATE ;                            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.openhow.openflag4_u.how.mode = GUARDED4 ;                    \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.openhow.openflag4_u.how.createhow4_u.createattrs = inattrs ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.claim.claim = CLAIM_NULL ;                                   \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.claim.open_claim4_u.file = inname ;                          \
  argcompound.argarray.argarray_len += 1 ;                                                                                                              \
} while ( 0 )

Definition at line 167 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_OPEN_NOCREATE (   argcompound,
  __seqid,
  inclientid,
  inaccess,
  inname,
  __owner_val,
  __owner_len 
)
Value:
do {                                                                                                                                    \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_OPEN ;                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.seqid = __seqid ;                            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.share_access = OPEN4_SHARE_ACCESS_BOTH ;     \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.share_deny = OPEN4_SHARE_DENY_NONE ;         \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.clientid = inclientid ;                \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.owner.owner_len =  __owner_len  ;      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.owner.owner.owner_val = __owner_val ;        \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.openhow.opentype = OPEN4_NOCREATE ;          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.claim.claim = CLAIM_NULL ;                   \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opopen.claim.open_claim4_u.file = inname ;          \
  argcompound.argarray.argarray_len += 1 ;                                                                                              \
} while( 0 )

Definition at line 65 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_PUTFH (   argcompound,
  nfs4fh 
)
Value:
do {                                                                                                          \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_PUTFH ;                \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opputfh.object = nfs4fh ; \
  argcompound.argarray.argarray_len += 1 ;                                                                    \
} while( 0 )

Definition at line 110 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_PUTROOTFH (   argcompound)
Value:
do {                                                                                               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_PUTROOTFH ; \
  argcompound.argarray.argarray_len += 1 ;                                                         \
} while( 0 )

Definition at line 50 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_READ (   argcompound,
  instateid,
  inoffset,
  incount 
)
Value:
do {                                                                                                                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_READ ;                                                  \
  memcpy( &argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opread.stateid, instateid, sizeof( stateid4 ) ) ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opread.offset = inoffset ;                                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opread.count  = incount ;                                  \
  argcompound.argarray.argarray_len += 1 ;                                                                                                     \
} while ( 0 )

Definition at line 243 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_READDIR (   argcompound,
  incookie,
  innbentry,
  inverifier,
  inbitmap 
)
Value:
do {                                                                                                                                                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_READDIR ;                                                     \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.cookie       = incookie ;                              \
  memcpy( argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.cookieverf, inverifier, NFS4_VERIFIER_SIZE ) ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.dircount     = innbentry*sizeof( entry4 ) ;            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.dircount     = 2048 ;                                  \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.maxcount     = innbentry*sizeof( entry4 ) ;            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.maxcount     = 4096 ;                                  \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opreaddir.attr_request = inbitmap ;                              \
  argcompound.argarray.argarray_len += 1 ;                                                                                                           \
} while ( 0 )

Definition at line 154 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_READLINK (   argcompound)
Value:
do {                                                                                              \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_READLINK ; \
  argcompound.argarray.argarray_len += 1 ;                                                        \
} while ( 0 )

Definition at line 225 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_REMOVE (   argcompound,
  inname 
)
Value:
do {                                                                                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_REMOVE ;                \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opremove.target = inname ; \
  argcompound.argarray.argarray_len += 1 ;                                                                     \
} while ( 0 )

Definition at line 210 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_RENAME (   argcompound,
  inoldname,
  innewname 
)
Value:
do {                                                                                                               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_RENAME ;                    \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.oprename.oldname = inoldname ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.oprename.newname = innewname ; \
  argcompound.argarray.argarray_len += 1 ;                                                                         \
} while ( 0 )

Definition at line 217 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_RESTOREFH (   argcompound)
Value:
do {                                                                                               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_RESTOREFH ; \
  argcompound.argarray.argarray_len += 1 ;                                                         \
} while ( 0 )

Definition at line 237 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_SAVEFH (   argcompound)
Value:
do {                                                                                            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_SAVEFH ; \
  argcompound.argarray.argarray_len += 1 ;                                                      \
} while ( 0 )

Definition at line 231 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_SETATTR (   argcompound,
  inattr 
)
Value:
do {                                                                                                                               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_SETATTR ;                                   \
  memset(&argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetattr.stateid,0,sizeof(stateid4)); \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetattr.obj_attributes = inattr ;            \
  argcompound.argarray.argarray_len += 1 ;                                                                                         \
} while( 0 )

Definition at line 96 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_SETCLIENTID (   argcompound,
  inclient,
  incallback 
)
Value:
do {                                                                                                                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_SETCLIENTID ;                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetclientid.client = inclient ;     \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetclientid.callback = incallback ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetclientid.callback_ident = 0 ;    \
  argcompound.argarray.argarray_len += 1 ;                                                                                \
} while ( 0 )

Definition at line 130 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_SETCLIENTID_CONFIRM (   argcompound,
  inclientid,
  inverifier 
)
Value:
do {                                                                                                                                                                       \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_SETCLIENTID_CONFIRM ;                                                               \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetclientid_confirm.clientid = inclientid ;                                          \
  strncpy( argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opsetclientid_confirm.setclientid_confirm, inverifier, NFS4_VERIFIER_SIZE ) ; \
  argcompound.argarray.argarray_len += 1 ;                                                                                                                                 \
} while ( 0 )

Definition at line 139 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_SYMLINK (   argcompound,
  inname,
  incontent,
  inattrs 
)
Value:
do {                                                                                                                                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_CREATE ;                                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.objtype.type = NF4LNK ;                      \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.objtype.createtype4_u.linkdata = incontent ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.objname = inname ;                           \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opcreate.createattrs = inattrs ;                      \
  argcompound.argarray.argarray_len += 1 ;                                                                                                \
} while ( 0 )

Definition at line 193 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_ADD_OP_WRITE (   argcompound,
  instateid,
  inoffset,
  indatabuffval,
  indatabufflen 
)
Value:
do {                                                                                                                                            \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].argop = NFS4_OP_WRITE ;                                                  \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opwrite.stable= DATA_SYNC4 ;                                \
  memcpy( &argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opwrite.stateid, instateid, sizeof( stateid4 ) ) ; \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opwrite.offset = inoffset ;                                 \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opwrite.data.data_val = indatabuffval ;                     \
  argcompound.argarray.argarray_val[argcompound.argarray.argarray_len].nfs_argop4_u.opwrite.data.data_len = indatabufflen ;                     \
  argcompound.argarray.argarray_len += 1 ;                                                                                                      \
} while ( 0 )

Definition at line 252 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_ARG_FREE   do {gsh_free(argcompound.argarray_val);} while( 0 )

Definition at line 46 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_EXECUTE (   pcontext,
  argcompound,
  rescompound,
  rc 
)
Value:
do {                                                                                      \
  int __renew_rc = 0 ;                                                                    \
  rc = -1 ;                                                                               \
  do {                                                                                    \
  if( __renew_rc == 0 )                                                                   \
      {                                                                                   \
        if( FSAL_proxy_change_user( pcontext ) == NULL ) break  ;                         \
        if( ( rc = clnt_call( pcontext->rpc_client, NFSPROC4_COMPOUND,                    \
                              (xdrproc_t)xdr_COMPOUND4args, (caddr_t)&argcompound,        \
                              (xdrproc_t)xdr_COMPOUND4res,  (caddr_t)&rescompound,        \
                              timeout ) ) == RPC_SUCCESS )                                \
              break ;                                                                     \
       }                                                                                  \
  LogEvent(COMPONENT_FSAL, "Reconnecting to the remote server.." ) ;                      \
  pthread_mutex_lock( &pcontext->lock ) ;                                                 \
  __renew_rc = fsal_internal_ClientReconnect( pcontext ) ;                                \
  pthread_mutex_unlock( &pcontext->lock ) ;                                               \
  if (__renew_rc) {                                                                       \
     LogEvent(COMPONENT_FSAL, "Cannot reconnect, will sleep for %d seconds",              \
              pcontext->retry_sleeptime ) ;                                               \
   sleep( pcontext->retry_sleeptime ) ;                                                   \
  }                                                                                       \
  } while( 1  ) ;                                                                         \
}  while( 0 )

Definition at line 263 of file fsal_nfsv4_macros.h.

#define COMPOUNDV4_EXECUTE_SIMPLE (   pcontext,
  argcompound,
  rescompound 
)
Value:
clnt_call( pcontext->rpc_client, NFSPROC4_COMPOUND,                    \
              (xdrproc_t)xdr_COMPOUND4args, (caddr_t)&argcompound,        \
              (xdrproc_t)xdr_COMPOUND4res,  (caddr_t)&rescompound,        \
              timeout )

Definition at line 289 of file fsal_nfsv4_macros.h.

#define PRINT_HANDLE (   tag,
  handle 
)
Value:
do {                                                                                  \
    if(isFullDebug(COMPONENT_FSAL))                                                     \
      {                                                                                 \
        char outstr[1024] ;                                                             \
        snprintHandle(outstr, 1024, handle) ;                                           \
        LogFullDebug(COMPONENT_FSAL, "============> %s : handle=%s\n", tag, outstr ) ;  \
      }                                                                                 \
  } while( 0 )

Definition at line 35 of file fsal_nfsv4_macros.h.

#define TIMEOUTRPC   {2, 0}

Definition at line 33 of file fsal_nfsv4_macros.h.