22#define CHIRP_CLIENT_TICKETS "CHIRP_CLIENT_TICKETS"
24struct chirp_client *chirp_client_connect(
const char *host,
int negotiate_auth, time_t stoptime);
25struct chirp_client *chirp_client_connect_condor(time_t stoptime);
27void chirp_client_disconnect(
struct chirp_client *c);
28INT64_T chirp_client_serial(
struct chirp_client *c);
30INT64_T chirp_client_open(
struct chirp_client *c,
const char *path, INT64_T flags, INT64_T mode,
struct chirp_stat *buf, time_t stoptime);
31INT64_T chirp_client_close(
struct chirp_client *c, INT64_T fd, time_t stoptime);
32INT64_T chirp_client_pread(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
33INT64_T chirp_client_pwrite(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
34INT64_T chirp_client_sread(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
35INT64_T chirp_client_swrite(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
36INT64_T chirp_client_fsync(
struct chirp_client *c, INT64_T fd, time_t stoptime);
37INT64_T chirp_client_fstat(
struct chirp_client *c, INT64_T fd,
struct chirp_stat *buf, time_t stoptime);
38INT64_T chirp_client_fstatfs(
struct chirp_client *c, INT64_T fd,
struct chirp_statfs *buf, time_t stoptime);
39INT64_T chirp_client_fchown(
struct chirp_client *c, INT64_T fd, INT64_T uid, INT64_T gid, time_t stoptime);
40INT64_T chirp_client_fchmod(
struct chirp_client *c, INT64_T fd, INT64_T mode, time_t stoptime);
41INT64_T chirp_client_ftruncate(
struct chirp_client *c, INT64_T fd, INT64_T length, time_t stoptime);
43INT64_T chirp_client_getfile(
struct chirp_client *c,
const char *name, FILE * stream, time_t stoptime);
44INT64_T chirp_client_getfile_buffer(
struct chirp_client *c,
const char *name,
char **
buffer, time_t stoptime);
45INT64_T chirp_client_putfile(
struct chirp_client *c,
const char *name, FILE * stream, INT64_T mode, INT64_T length, time_t stoptime);
46INT64_T chirp_client_putfile_buffer(
struct chirp_client *c,
const char *name,
const void *
buffer, INT64_T mode,
size_t length, time_t stoptime);
47INT64_T chirp_client_thirdput(
struct chirp_client *c,
const char *path,
const char *hostname,
const char *newpath, time_t stoptime);
49INT64_T chirp_client_getstream(
struct chirp_client *c,
const char *path, time_t stoptime);
50INT64_T chirp_client_getstream_read(
struct chirp_client *c,
void *
buffer, INT64_T length, time_t stoptime);
52INT64_T chirp_client_putstream(
struct chirp_client *c,
const char *path, time_t stoptime);
53INT64_T chirp_client_putstream_write(
struct chirp_client *c,
const char *data, INT64_T length, time_t stoptime);
55INT64_T chirp_client_cookie(
struct chirp_client *c,
const char *cookie, time_t stoptime);
57CHIRP_SEARCH *chirp_client_opensearch(
struct chirp_client *c,
const char *paths,
const char *pattern,
int flags, time_t stoptime);
59int chirp_client_closesearch(CHIRP_SEARCH *search);
61INT64_T chirp_client_getlongdir(
struct chirp_client *c,
const char *
path,
chirp_longdir_t callback,
void *arg, time_t stoptime);
62INT64_T chirp_client_getdir(
struct chirp_client *c,
const char *
path,
chirp_dir_t callback,
void *arg, time_t stoptime);
63INT64_T chirp_client_opendir(
struct chirp_client *c,
const char *
path, time_t stoptime);
64const char *chirp_client_readdir(
struct chirp_client *c, time_t stoptime);
65INT64_T chirp_client_getacl(
struct chirp_client *c,
const char *
path,
chirp_dir_t callback,
void *arg, time_t stoptime);
66INT64_T chirp_client_openacl(
struct chirp_client *c,
const char *
path, time_t stoptime);
67const char *chirp_client_readacl(
struct chirp_client *c, time_t stoptime);
68INT64_T chirp_client_ticket_create(
struct chirp_client *c,
char name[
CHIRP_PATH_MAX],
unsigned bits, time_t stoptime);
69INT64_T chirp_client_ticket_register(
struct chirp_client *c,
const char *name,
const char *subject, time_t duration, time_t stoptime);
70INT64_T chirp_client_ticket_delete(
struct chirp_client *c,
const char *name, time_t stoptime);
71INT64_T chirp_client_ticket_list(
struct chirp_client *c,
const char *subject,
char ***list, time_t stoptime);
72INT64_T chirp_client_ticket_get(
struct chirp_client *c,
const char *name,
char **subject,
char **ticket, time_t * duration,
char ***rights, time_t stoptime);
73INT64_T chirp_client_ticket_modify(
struct chirp_client *c,
const char *name,
const char *
path,
const char *aclmask, time_t stoptime);
74INT64_T chirp_client_setacl(
struct chirp_client *c,
const char *
path,
const char *user,
const char *acl, time_t stoptime);
75INT64_T chirp_client_resetacl(
struct chirp_client *c,
const char *
path,
const char *acl, time_t stoptime);
76INT64_T chirp_client_locate(
struct chirp_client *c,
const char *
path,
chirp_loc_t callback,
void *arg, time_t stoptime);
77INT64_T chirp_client_whoami(
struct chirp_client *c,
char *buf, INT64_T length, time_t stoptime);
78INT64_T chirp_client_whoareyou(
struct chirp_client *c,
const char *rhost,
char *
buffer, INT64_T length, time_t stoptime);
79INT64_T chirp_client_unlink(
struct chirp_client *c,
const char *
path, time_t stoptime);
80INT64_T chirp_client_rename(
struct chirp_client *c,
const char *
path,
const char *newpath, time_t stoptime);
81INT64_T chirp_client_link(
struct chirp_client *c,
const char *
path,
const char *newpath, time_t stoptime);
82INT64_T chirp_client_symlink(
struct chirp_client *c,
const char *
path,
const char *newpath, time_t stoptime);
83INT64_T chirp_client_readlink(
struct chirp_client *c,
const char *
path,
char *buf, INT64_T length, time_t stoptime);
84INT64_T chirp_client_mkdir(
struct chirp_client *c,
char const *
path, INT64_T mode, time_t stoptime);
85INT64_T chirp_client_rmdir(
struct chirp_client *c,
char const *
path, time_t stoptime);
86INT64_T chirp_client_rmall(
struct chirp_client *c,
char const *
path, time_t stoptime);
87INT64_T chirp_client_stat(
struct chirp_client *c,
const char *
path,
struct chirp_stat *buf, time_t stoptime);
88INT64_T chirp_client_lstat(
struct chirp_client *c,
const char *
path,
struct chirp_stat *buf, time_t stoptime);
89INT64_T chirp_client_statfs(
struct chirp_client *c,
const char *
path,
struct chirp_statfs *buf, time_t stoptime);
90INT64_T chirp_client_access(
struct chirp_client *c,
const char *
path, INT64_T mode, time_t stoptime);
91INT64_T chirp_client_chmod(
struct chirp_client *c,
const char *
path, INT64_T mode, time_t stoptime);
92INT64_T chirp_client_chown(
struct chirp_client *c,
const char *
path, INT64_T uid, INT64_T gid, time_t stoptime);
93INT64_T chirp_client_lchown(
struct chirp_client *c,
const char *
path, INT64_T uid, INT64_T gid, time_t stoptime);
94INT64_T chirp_client_truncate(
struct chirp_client *c,
const char *
path, INT64_T length, time_t stoptime);
95INT64_T chirp_client_utime(
struct chirp_client *c,
const char *
path, time_t actime, time_t modtime, time_t stoptime);
96INT64_T chirp_client_hash(
struct chirp_client *c,
const char *
path,
const char *algorithm,
unsigned char digest[
CHIRP_DIGEST_MAX], time_t stoptime);
97INT64_T chirp_client_md5(
struct chirp_client *c,
const char *
path,
unsigned char digest[
CHIRP_DIGEST_MAX], time_t stoptime);
98INT64_T chirp_client_setrep(
struct chirp_client *c,
const char *
path,
int nreps, time_t stoptime);
100INT64_T chirp_client_getxattr(
struct chirp_client *c,
const char *
path,
const char *name,
void *data,
size_t size, time_t stoptime);
101INT64_T chirp_client_fgetxattr(
struct chirp_client *c, INT64_T fd,
const char *name,
void *data,
size_t size, time_t stoptime);
102INT64_T chirp_client_lgetxattr(
struct chirp_client *c,
const char *
path,
const char *name,
void *data,
size_t size, time_t stoptime);
103INT64_T chirp_client_listxattr(
struct chirp_client *c,
const char *
path,
char *list,
size_t size, time_t stoptime);
104INT64_T chirp_client_flistxattr(
struct chirp_client *c, INT64_T fd,
char *list,
size_t size, time_t stoptime);
105INT64_T chirp_client_llistxattr(
struct chirp_client *c,
const char *
path,
char *list,
size_t size, time_t stoptime);
106INT64_T chirp_client_setxattr(
struct chirp_client *c,
const char *
path,
const char *name,
const void *data,
size_t size,
int flags, time_t stoptime);
107INT64_T chirp_client_fsetxattr(
struct chirp_client *c, INT64_T fd,
const char *name,
const void *data,
size_t size,
int flags, time_t stoptime);
108INT64_T chirp_client_lsetxattr(
struct chirp_client *c,
const char *
path,
const char *name,
const void *data,
size_t size,
int flags, time_t stoptime);
109INT64_T chirp_client_removexattr(
struct chirp_client *c,
const char *
path,
const char *name, time_t stoptime);
110INT64_T chirp_client_fremovexattr(
struct chirp_client *c, INT64_T fd,
const char *name, time_t stoptime);
111INT64_T chirp_client_lremovexattr(
struct chirp_client *c,
const char *
path,
const char *name, time_t stoptime);
113INT64_T chirp_client_remote_debug(
struct chirp_client *c,
const char *flag, time_t stoptime);
114INT64_T chirp_client_localpath(
struct chirp_client *c,
const char *
path,
char *localpath,
int length, time_t stoptime);
115INT64_T chirp_client_audit(
struct chirp_client *c,
const char *
path,
struct chirp_audit **list, time_t stoptime);
117INT64_T chirp_client_mkalloc(
struct chirp_client *c,
char const *
path, INT64_T size, INT64_T mode, time_t stoptime);
118INT64_T chirp_client_lsalloc(
struct chirp_client *c,
char const *
path,
char *allocpath, INT64_T * total, INT64_T * inuse, time_t stoptime);
120INT64_T chirp_client_pread_begin(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
121INT64_T chirp_client_pread_finish(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
122INT64_T chirp_client_sread_begin(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
123INT64_T chirp_client_sread_finish(
struct chirp_client *c, INT64_T fd,
void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
124INT64_T chirp_client_pwrite_begin(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
125INT64_T chirp_client_pwrite_finish(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T offset, time_t stoptime);
126INT64_T chirp_client_swrite_begin(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
127INT64_T chirp_client_swrite_finish(
struct chirp_client *c, INT64_T fd,
const void *
buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset, time_t stoptime);
128INT64_T chirp_client_fsync_begin(
struct chirp_client *c, INT64_T fd, time_t stoptime);
129INT64_T chirp_client_fsync_finish(
struct chirp_client *c, INT64_T fd, time_t stoptime);
130INT64_T chirp_client_fstat_begin(
struct chirp_client *c, INT64_T fd,
struct chirp_stat *buf, time_t stoptime);
131INT64_T chirp_client_fstat_finish(
struct chirp_client *c, INT64_T fd,
struct chirp_stat *buf, time_t stoptime);
133INT64_T chirp_client_job_create(
struct chirp_client *c,
const char *json,
chirp_jobid_t *
id, time_t stoptime);
134INT64_T chirp_client_job_commit(
struct chirp_client *c,
chirp_jobid_t id, time_t stoptime);
135INT64_T chirp_client_job_kill(
struct chirp_client *c,
chirp_jobid_t id, time_t stoptime);
136INT64_T chirp_client_job_status(
struct chirp_client *c,
chirp_jobid_t id,
char **status, time_t stoptime);
137INT64_T chirp_client_job_wait(
struct chirp_client *c,
chirp_jobid_t id, INT64_T timeout,
char **status, time_t stoptime);
138INT64_T chirp_client_job_reap(
struct chirp_client *c,
chirp_jobid_t id, time_t stoptime);
This file defines the binary values mandated by the Chirp Protocol specification, used by both the cl...
#define CHIRP_PATH_MAX
The maximum length of a full path in any Chirp operation.
Definition chirp_protocol.h:20
All of the structure and type definitions used by the Chirp API.
void(* chirp_dir_t)(const char *path, void *arg)
A callback function typedef used to display a directory or access control list.
Definition chirp_types.h:190
void(* chirp_loc_t)(const char *location, void *arg)
A callback function typedef used to display a file's location(s).
Definition chirp_types.h:211
void(* chirp_longdir_t)(const char *path, struct chirp_stat *info, void *arg)
A callback function typedef used to display a detailed directory.
Definition chirp_types.h:201
#define CHIRP_DIGEST_MAX
Maximum digest size for a supported hash function.
Definition chirp_types.h:222
int64_t chirp_jobid_t
The type of Chirp job identifiers.
Definition chirp_types.h:216
Descibes the space consumed by a single user on a Chirp server.
Definition chirp_types.h:175
Describes a result from a search operation.
Definition chirp_types.h:104
char path[CHIRP_PATH_MAX]
Path of the matching file.
Definition chirp_types.h:105
Describes the properties of a file, much like the Unix stat structure.
Definition chirp_types.h:34
Describes the properties of a file system, much like the Unix statfs structure.
Definition chirp_types.h:72