Coda Distributed File System
Public Member Functions | Friends | List of all members
fsobj Class Reference

#include <fso.h>

Collaboration diagram for fsobj:
Collaboration graph
[legend]

Public Member Functions

int Fetch (uid_t) EXCLUDES_TRANSACTION
 
int Fetch (uid_t uid, uint64_t pos, int64_t count) EXCLUDES_TRANSACTION
 
int GetAttr (uid_t, RPC2_BoundedBS *=0) EXCLUDES_TRANSACTION
 
int GetACL (RPC2_BoundedBS *, uid_t) EXCLUDES_TRANSACTION
 
int Store (unsigned long, Date_t, uid_t) EXCLUDES_TRANSACTION
 
int SetAttr (struct coda_vattr *, uid_t) EXCLUDES_TRANSACTION
 
int SetACL (RPC2_CountedBS *, uid_t) EXCLUDES_TRANSACTION
 
int Create (char *, fsobj **, uid_t, unsigned short, int) EXCLUDES_TRANSACTION
 
int Remove (char *, fsobj *, uid_t) EXCLUDES_TRANSACTION
 
int Link (char *, fsobj *, uid_t) EXCLUDES_TRANSACTION
 
int Rename (fsobj *, char *, fsobj *, char *, fsobj *, uid_t) EXCLUDES_TRANSACTION
 
int Mkdir (char *, fsobj **, uid_t, unsigned short, int) EXCLUDES_TRANSACTION
 
int Rmdir (char *, fsobj *, uid_t) EXCLUDES_TRANSACTION
 
int Symlink (char *, char *, uid_t, unsigned short, int) EXCLUDES_TRANSACTION
 
int SetVV (ViceVersionVector *, uid_t) EXCLUDES_TRANSACTION
 
int Open (int writep, int truncp, venus_cnode *cp, uid_t uid) EXCLUDES_TRANSACTION
 
int Sync (uid_t uid) EXCLUDES_TRANSACTION
 
void Release (int writep) EXCLUDES_TRANSACTION
 
int Close (int writep, uid_t uid) EXCLUDES_TRANSACTION
 
int Access (int rights, int modes, uid_t) EXCLUDES_TRANSACTION
 
int Lookup (fsobj **, VenusFid *, const char *, uid_t, int flags, int GetInconsistent=0) EXCLUDES_TRANSACTION
 
int Readdir (char *, int, int, int *, uid_t)
 
int Readlink (char *, unsigned long, int *, uid_t)
 
int ReadIntent (uid_t uid, int priority, uint64_t pos, int64_t count) EXCLUDES_TRANSACTION
 
int ReadIntentFinish (uint64_t pos, int64_t count)
 
int dir_Lookup (const char *, VenusFid *, int)
 
int CheckAcRights (uid_t uid, long rights, int connected)
 
void GetVattr (struct coda_vattr *)
 
void GetFid (VenusFid *f)
 
void GetPath (char *, int scope=PATH_VOLUME)
 
ViceVersionVector * VV ()
 
int IsFile ()
 
int IsDir ()
 
int IsSymLink ()
 
int IsNormal ()
 
int IsRoot ()
 
int IsVenusRoot ()
 
int IsMtPt ()
 
int IsMTLink ()
 
int IsVirgin ()
 
int IsBackFetching ()
 
int IsPioctlFile ()
 
int SetLastResolved (long t)
 
int MakeShadow () REQUIRES_TRANSACTION
 
void RemoveShadow ()
 
void CacheReport (int, int)
 
CacheChunkListGetHoles (uint64_t start, int64_t len)
 
void print ()
 
void print (FILE *fp)
 
void print (int)
 
void ListCache (FILE *, int long_format=0, unsigned int valid=3)
 
void ListCacheShort (FILE *)
 
void ListCacheLong (FILE *)
 
cmlentFinalCmlent (int)
 
void SetComp (const char *) REQUIRES_TRANSACTION
 
const char * GetComp (void)
 
void SetLocalObj () REQUIRES_TRANSACTION
 
void UnsetLocalObj () REQUIRES_TRANSACTION
 
int IsLocalObj ()
 
int IsAncestor (VenusFid *)
 
void DeLocalRootParent (fsobj *, VenusFid *, fsobj *)
 
void RecoverRootParent (VenusFid *, char *)
 
int SetLocalVV (ViceVersionVector *) EXCLUDES_TRANSACTION
 
int RepairStore () EXCLUDES_TRANSACTION
 
int RepairSetAttr (unsigned long, Date_t, uid_t, unsigned short, RPC2_CountedBS *) EXCLUDES_TRANSACTION
 
int RepairCreate (fsobj **, char *, unsigned short, int) EXCLUDES_TRANSACTION
 
int RepairRemove (char *, fsobj *) EXCLUDES_TRANSACTION
 
int RepairLink (char *, fsobj *) EXCLUDES_TRANSACTION
 
int RepairRename (fsobj *, char *, fsobj *, char *, fsobj *) EXCLUDES_TRANSACTION
 
int RepairMkdir (fsobj **, char *, unsigned short, int) EXCLUDES_TRANSACTION
 
int RepairRmdir (char *, fsobj *) EXCLUDES_TRANSACTION
 
int RepairSymlink (fsobj **, char *, char *, unsigned short, int) EXCLUDES_TRANSACTION
 
void FetchProgressIndicator (unsigned long offset)
 
size_t Size (void)
 

Friends

class fsdb
 
class fso_iterator
 
class vproc
 
class namectxt
 
class volent
 
class repvol
 
class reintvol
 
class ClientModifyLog
 
class cmlent
 
class cml_iterator
 
class resent
 
class mgrpent
 
class hdb
 
class Realm
 
class plan9server
 
void FSOInit ()
 
int FSO_PriorityFN (bsnode *, bsnode *)
 
long VENUS_CallBackFetch (RPC2_Handle, ViceFid *, SE_Descriptor *)
 
void RecoverPathName (char *, VenusFid *, ClientModifyLog *, cmlent *)
 

Member Function Documentation

◆ Access()

int fsobj::Access ( int  rights,
int  modes,
uid_t  uid 
)

◆ CacheReport()

void fsobj::CacheReport ( int  fd,
int  level 
)

◆ CheckAcRights()

int fsobj::CheckAcRights ( uid_t  uid,
long  rights,
int  connected 
)

◆ Close()

int fsobj::Close ( int  writep,
uid_t  uid 
)

◆ Create()

int fsobj::Create ( char *  name,
fsobj **  target_fso_addr,
uid_t  uid,
unsigned short  Mode,
int  target_pri 
)

◆ DeLocalRootParent()

void fsobj::DeLocalRootParent ( fsobj ,
VenusFid ,
fsobj  
)

◆ dir_Lookup()

int fsobj::dir_Lookup ( const char *  Name,
VenusFid Fid,
int  flags 
)

◆ Fetch() [1/2]

int fsobj::Fetch ( uid_t  uid,
uint64_t  pos,
int64_t  count 
)

◆ Fetch() [2/2]

int fsobj::Fetch ( uid_t  uid)

◆ FetchProgressIndicator()

void fsobj::FetchProgressIndicator ( unsigned long  offset)

◆ FinalCmlent()

cmlent * fsobj::FinalCmlent ( int  tid)

◆ GetACL()

int fsobj::GetACL ( RPC2_BoundedBS acl,
uid_t  uid 
)

◆ GetAttr()

int fsobj::GetAttr ( uid_t  uid,
RPC2_BoundedBS acl = 0 
)

◆ GetComp()

const char * fsobj::GetComp ( void  )

◆ GetFid()

void fsobj::GetFid ( VenusFid f)
inline

◆ GetHoles()

CacheChunkList * fsobj::GetHoles ( uint64_t  start,
int64_t  len 
)

◆ GetPath()

void fsobj::GetPath ( char *  buf,
int  scope = PATH_VOLUME 
)

◆ GetVattr()

void fsobj::GetVattr ( struct coda_vattr vap)

◆ IsAncestor()

int fsobj::IsAncestor ( VenusFid )

◆ IsBackFetching()

int fsobj::IsBackFetching ( )

◆ IsDir()

int fsobj::IsDir ( )
inline

◆ IsFile()

int fsobj::IsFile ( )
inline

◆ IsLocalObj()

int fsobj::IsLocalObj ( )
inline

◆ IsMTLink()

int fsobj::IsMTLink ( )
inline

◆ IsMtPt()

int fsobj::IsMtPt ( )
inline

◆ IsNormal()

int fsobj::IsNormal ( )
inline

◆ IsPioctlFile()

int fsobj::IsPioctlFile ( )
inline

◆ IsRoot()

int fsobj::IsRoot ( )
inline

◆ IsSymLink()

int fsobj::IsSymLink ( )
inline

◆ IsVenusRoot()

int fsobj::IsVenusRoot ( )
inline

◆ IsVirgin()

int fsobj::IsVirgin ( )

◆ Link()

int fsobj::Link ( char *  name,
fsobj source_fso,
uid_t  uid 
)

◆ ListCache()

void fsobj::ListCache ( FILE *  fp,
int  long_format = 0,
unsigned int  valid = 3 
)

◆ ListCacheLong()

void fsobj::ListCacheLong ( FILE *  fp)

◆ ListCacheShort()

void fsobj::ListCacheShort ( FILE *  fp)

◆ Lookup()

int fsobj::Lookup ( fsobj **  target_fso_addr,
VenusFid inc_fid,
const char *  name,
uid_t  uid,
int  flags,
int  GetInconsistent = 0 
)

◆ MakeShadow()

int fsobj::MakeShadow ( )

◆ Mkdir()

int fsobj::Mkdir ( char *  name,
fsobj **  target_fso_addr,
uid_t  uid,
unsigned short  Mode,
int  target_pri 
)

◆ Open()

int fsobj::Open ( int  writep,
int  truncp,
venus_cnode cp,
uid_t  uid 
)

◆ print() [1/3]

void fsobj::print ( void  )
inline

◆ print() [2/3]

void fsobj::print ( FILE *  fp)
inline

◆ print() [3/3]

void fsobj::print ( int  fdes)

◆ Readdir()

int fsobj::Readdir ( char *  ,
int  ,
int  ,
int *  ,
uid_t   
)

◆ ReadIntent()

int fsobj::ReadIntent ( uid_t  uid,
int  priority,
uint64_t  pos,
int64_t  count 
)

◆ ReadIntentFinish()

int fsobj::ReadIntentFinish ( uint64_t  pos,
int64_t  count 
)

◆ Readlink()

int fsobj::Readlink ( char *  buf,
unsigned long  len,
int *  cc,
uid_t  uid 
)

◆ RecoverRootParent()

void fsobj::RecoverRootParent ( VenusFid ,
char *   
)

◆ Release()

void fsobj::Release ( int  writep)

◆ Remove()

int fsobj::Remove ( char *  name,
fsobj target_fso,
uid_t  uid 
)

◆ RemoveShadow()

void fsobj::RemoveShadow ( )

◆ Rename()

int fsobj::Rename ( fsobj s_parent_fso,
char *  s_name,
fsobj s_fso,
char *  t_name,
fsobj t_fso,
uid_t  uid 
)

◆ RepairCreate()

int fsobj::RepairCreate ( fsobj **  t_fso_addr,
char *  name,
unsigned short  Mode,
int  target_pri 
)

◆ RepairLink()

int fsobj::RepairLink ( char *  name,
fsobj source_fso 
)

◆ RepairMkdir()

int fsobj::RepairMkdir ( fsobj **  t_fso_addr,
char *  name,
unsigned short  Mode,
int  target_pri 
)

◆ RepairRemove()

int fsobj::RepairRemove ( char *  name,
fsobj target_fso 
)

◆ RepairRename()

int fsobj::RepairRename ( fsobj s_parent_fso,
char *  s_name,
fsobj s_fso,
char *  t_name,
fsobj t_fso 
)

◆ RepairRmdir()

int fsobj::RepairRmdir ( char *  name,
fsobj target_fso 
)

◆ RepairSetAttr()

int fsobj::RepairSetAttr ( unsigned long  NewLength,
Date_t  NewDate,
uid_t  NewOwner,
unsigned short  NewMode,
RPC2_CountedBS acl 
)

◆ RepairStore()

int fsobj::RepairStore ( )

◆ RepairSymlink()

int fsobj::RepairSymlink ( fsobj **  t_fso_addr,
char *  name,
char *  contents,
unsigned short  Mode,
int  target_pri 
)

◆ Rmdir()

int fsobj::Rmdir ( char *  name,
fsobj target_fso,
uid_t  uid 
)

◆ SetACL()

int fsobj::SetACL ( RPC2_CountedBS acl,
uid_t  uid 
)

◆ SetAttr()

int fsobj::SetAttr ( struct coda_vattr vap,
uid_t  uid 
)

◆ SetComp()

void fsobj::SetComp ( const char *  name)

◆ SetLastResolved()

int fsobj::SetLastResolved ( long  t)
inline

◆ SetLocalObj()

void fsobj::SetLocalObj ( )

◆ SetLocalVV()

int fsobj::SetLocalVV ( ViceVersionVector *  newvv)

◆ SetVV()

int fsobj::SetVV ( ViceVersionVector *  newvv,
uid_t  uid 
)

◆ Size()

size_t fsobj::Size ( void  )
inline

◆ Store()

int fsobj::Store ( unsigned long  NewLength,
Date_t  Mtime,
uid_t  uid 
)

◆ Symlink()

int fsobj::Symlink ( char *  s_name,
char *  t_name,
uid_t  uid,
unsigned short  Mode,
int  target_pri 
)

◆ Sync()

int fsobj::Sync ( uid_t  uid)

◆ UnsetLocalObj()

void fsobj::UnsetLocalObj ( )

◆ VV()

ViceVersionVector * fsobj::VV ( )
inline

Friends And Related Function Documentation

◆ ClientModifyLog

friend class ClientModifyLog
friend

◆ cml_iterator

friend class cml_iterator
friend

◆ cmlent

friend class cmlent
friend

◆ fsdb

friend class fsdb
friend

◆ fso_iterator

friend class fso_iterator
friend

◆ FSO_PriorityFN

int FSO_PriorityFN ( bsnode b1,
bsnode b2 
)
friend

◆ FSOInit

void FSOInit ( )
friend

◆ hdb

friend class hdb
friend

◆ mgrpent

friend class mgrpent
friend

◆ namectxt

friend class namectxt
friend

◆ plan9server

friend class plan9server
friend

◆ Realm

friend class Realm
friend

◆ RecoverPathName

void RecoverPathName ( char *  path,
VenusFid fid,
ClientModifyLog CML,
cmlent starter 
)
friend

◆ reintvol

friend class reintvol
friend

◆ repvol

friend class repvol
friend

◆ resent

friend class resent
friend

◆ VENUS_CallBackFetch

long VENUS_CallBackFetch ( RPC2_Handle  RPCid,
ViceFid *  Fid,
SE_Descriptor BD 
)
friend

◆ volent

friend class volent
friend

◆ vproc

friend class vproc
friend

Member Data Documentation

◆ mtpoint

fsobj* fsobj::mtpoint

◆ root

fsobj* fsobj::root

The documentation for this class was generated from the following files: