XrdCksManOss Class Reference

#include <XrdCksManOss.hh>

Inheritance diagram for XrdCksManOss:
Inheritance graph
[legend]
Collaboration diagram for XrdCksManOss:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual int Calc (const char *Lfn, XrdCksData &Cks, int doSet=1)
virtual int Del (const char *Lfn, XrdCksData &Cks)
virtual int Get (const char *Lfn, XrdCksData &Cks)
virtual char * List (const char *Lfn, char *Buff, int Blen, char Sep=' ')
virtual int Set (const char *Lfn, XrdCksData &Cks, int myTime=0)
virtual int Ver (const char *Lfn, XrdCksData &Cks)
 XrdCksManOss (XrdOss *ossX, XrdSysError *erP, int iosz, XrdVersionInfo &vInfo, bool autoload=false)
virtual ~XrdCksManOss ()

Protected Member Functions

virtual int Calc (const char *Lfn, time_t &MTime, XrdCksCalc *CksObj)
virtual int ModTime (const char *Pfn, time_t &MTime)

Private Attributes

int buffSZ

Constructor & Destructor Documentation

XrdCksManOss::XrdCksManOss ( XrdOss ossX,
XrdSysError erP,
int  iosz,
XrdVersionInfo &  vInfo,
bool  autoload = false 
)
virtual XrdCksManOss::~XrdCksManOss (  )  [inline, virtual]

Member Function Documentation

virtual int XrdCksManOss::Calc ( const char *  Lfn,
time_t &  MTime,
XrdCksCalc CksObj 
) [protected, virtual]

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::Calc ( const char *  Pfn,
XrdCksData Cks,
int  doSet = 1 
) [virtual]

Calculate a new checksum for a physical file using the checksum algorithm named in the Cks parameter.

Parameters:
Pfn The physical name of the file to be checksumed.
Cks For input, it specifies the checksum algorithm to be used. For output, the checksum value is returned upon success.
doSet When true, the new value must replace any existing value in the Pfn's extended file attributes.
Returns:
Success: zero with Cks structure holding the checksum value. Failure: -errno (see significant error numbers below).

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::Del ( const char *  Pfn,
XrdCksData Cks 
) [virtual]

Delete the checksum from the Pfn's xattrs.

Returns:
Success: 0 Failure: -errno (see significant error numbers below).

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::Get ( const char *  Pfn,
XrdCksData Cks 
) [virtual]

Retreive the checksum from the Pfn's xattrs and return it and indicate whether or not it is stale (i.e. the file modification has changed or the name and length are not the expected values).

Parameters:
Pfn The physical name of the file to be checksumed.
Cks For input, it specifies the checksum type to return. For output, the checksum value is returned upon success.
Returns:
Success: The length of the binary checksum in the Cks structure. Failure: -errno (see significant error numbers below).

Reimplemented from XrdCksManager.

virtual char* XrdCksManOss::List ( const char *  Pfn,
char *  Buff,
int  Blen,
char  Sep = ' ' 
) [virtual]

List names of the checksums associated with a Pfn or all supported ones.

Parameters:
Pfn The name of the physical file whose checksum names are to be returned. When Pfn is null, return all supported checksum algorithm names.
Buff Points to a buffer, at least 64 bytes in length, to hold a "Sep" separated list of checksum names.
Blen The length of the buffer.
Sep The separation character to be used between adjacent names.
Returns:
Success: Pointer to Buff holding at least one checksum name. Failure: A nil pointer is returned.

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::ModTime ( const char *  Pfn,
time_t &  MTime 
) [protected, virtual]

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::Set ( const char *  Pfn,
XrdCksData Cks,
int  myTime = 0 
) [virtual]

Set a file's checksum in the extended attributes along with the file's mtime and the time of setting.

Parameters:
Pfn The physical name of the file to be set.
Cks Specifies the checksum name and value.
myTime When true then the fmTime and gmTime in the Cks structure are to be used; as opposed to the current time.
Returns:
Success: zero is returned. Failure: -errno (see significant error numbers below).

Reimplemented from XrdCksManager.

virtual int XrdCksManOss::Ver ( const char *  Pfn,
XrdCksData Cks 
) [virtual]

Retreive the checksum from the Pfn's xattrs and compare it to the supplied checksum. If the checksum is not available or is stale, a new checksum is calculated and written to the extended attributes.

Parameters:
Pfn The physical name of the file to be verified.
Cks Specifies the checksum name and value.
Returns:
Success: True Failure: False (the checksums do not match) or -errno indicating that verification could not be performed (see significant error numbers below).

Reimplemented from XrdCksManager.


Member Data Documentation

int XrdCksManOss::buffSZ [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 11 Jun 2020 for xrootd by  doxygen 1.6.1