cctools
Data Structures | Macros | Typedefs | Enumerations
chirp_types.h File Reference

All of the structure and type definitions used by the Chirp API. More...

#include "chirp_protocol.h"
#include "buffer.h"
#include "int_sizes.h"
#include <fcntl.h>
#include <sys/types.h>
#include <inttypes.h>
#include <stdint.h>
#include <time.h>

Go to the source code of this file.

Data Structures

struct  chirp_stat
 Describes the properties of a file, much like the Unix stat structure. More...
 
struct  chirp_statfs
 Describes the properties of a file system, much like the Unix statfs structure. More...
 
struct  chirp_dirent
 Describes a directory entry returned by chirp_reli_readdir. More...
 
struct  chirp_searchent
 Describes a result from a search operation. More...
 
struct  chirp_searchstream
 Keeps track of the state of a search stream. More...
 
struct  chirp_bulkio
 Describes a bulk I/O operation. More...
 
struct  chirp_audit
 Descibes the space consumed by a single user on a Chirp server. More...
 

Macros

#define CHIRP_SEARCH_STOPATFIRST   (1<<0)
 Bit flags for the search operation. More...
 
#define CHIRP_SEARCH_ERR_OPEN   1
 Streaming errors for the search operation. More...
 
#define CHIRP_SEARCH_DELIMITER   '|'
 Options for the search operation. More...
 
#define CHIRP_DIGEST_MAX   128
 Maximum digest size for a supported hash function. More...
 

Typedefs

typedef void(* chirp_dir_t )(const char *path, void *arg)
 A callback function typedef used to display a directory or access control list. More...
 
typedef void(* chirp_longdir_t )(const char *path, struct chirp_stat *info, void *arg)
 A callback function typedef used to display a detailed directory. More...
 
typedef void(* chirp_loc_t )(const char *location, void *arg)
 A callback function typedef used to display a file's location(s). More...
 
typedef int64_t chirp_jobid_t
 The type of Chirp job identifiers. More...
 

Enumerations

enum  chirp_bulkio_t {
  CHIRP_BULKIO_PREAD,
  CHIRP_BULKIO_PWRITE,
  CHIRP_BULKIO_SREAD,
  CHIRP_BULKIO_SWRITE,
  CHIRP_BULKIO_FSTAT,
  CHIRP_BULKIO_FSYNC
}
 Describes the type of a bulk I/O operation. More...
 

Detailed Description

All of the structure and type definitions used by the Chirp API.

Macro Definition Documentation

#define CHIRP_SEARCH_STOPATFIRST   (1<<0)

Bit flags for the search operation.

#define CHIRP_SEARCH_ERR_OPEN   1

Streaming errors for the search operation.

#define CHIRP_SEARCH_DELIMITER   '|'

Options for the search operation.

#define CHIRP_DIGEST_MAX   128

Maximum digest size for a supported hash function.

Typedef Documentation

typedef void(* chirp_dir_t)(const char *path, void *arg)

A callback function typedef used to display a directory or access control list.

A function matching this type is called by chirp_reli_getdir to display or otherwise act upon each line in a directory or access control list.

Parameters
pathThe short name of the file, directory, or ACL to display.
argA convenience pointer corresponding to the arg passed from chirp_reli_getdir.
See Also
chirp_reli_getdir, chirp_reli_getacl
typedef void(* chirp_longdir_t)(const char *path, struct chirp_stat *info, void *arg)

A callback function typedef used to display a detailed directory.

A function matching this type is called by chirp_reli_getlongdir to display or otherwise act upon each line in a directory listing.

Parameters
pathThe short name of the file or directory to display.
infoThe details of the named file.
argA convenience pointer corresponding to the arg passed from chirp_reli_getlongdir.
See Also
chirp_reli_getlongdir
typedef void(* chirp_loc_t)(const char *location, void *arg)

A callback function typedef used to display a file's location(s).

A function matching this type is called by chirp_reli_locate to display or otherwise act upon each location at which a given file is stored.

Parameters
locationThe location of a file (usually hostname:local_path).
argA convenience pointer corresponding to the arg passed from chirp_reli_locate.
See Also
chirp_reli_locate
typedef int64_t chirp_jobid_t

The type of Chirp job identifiers.

It is a 64 bit unsigned integer.

Enumeration Type Documentation

Describes the type of a bulk I/O operation.

Used by chirp_bulkio

Enumerator
CHIRP_BULKIO_PREAD 

Perform a chirp_reli_pread.

CHIRP_BULKIO_PWRITE 

Perform a chirp_reli_pwrite.

CHIRP_BULKIO_SREAD 

Perform a chirp_reli_sread.

CHIRP_BULKIO_SWRITE 

Perform a chirp_reli_swrite.

CHIRP_BULKIO_FSTAT 

Perform a chirp_reli_fstat.

CHIRP_BULKIO_FSYNC 

Perform a chirp_reli_fsync.