slashgrid.c File Reference

## Functions

int | cleanup_recurse (char *currentdirname)
void * | cleanup_thread (void *unused)
size_t | headers_callback (void *ptr, size_t size, size_t nmemb, void *p)
int | debug_callback (CURL *handle, curl_infotype infotype, char *rawmesg, size_t size, void *i)
int | translate_sitecast_url (char **sitecast_url, char *raw_url)
char * | mapdir_uid_to_dn (uid_t uid)
int | perform_request (struct grst_request *request_data, struct fuse_context *fuse_ctx)
size_t | rawbody_callback (void *ptr, size_t size, size_t nmemb, void *data)
size_t | null_callback (void *ptr, size_t size, size_t nmemb, void *data)
size_t | read_data_callback (void *ptr, size_t size, size_t nmemb, void *data)
int | grst_dir_list_cmp (const void *a, const void *b)
struct grst_dir_list * | index_to_dir_list (char *text, char *source)
GRSTgaclPerm | get_gaclPerm (struct fuse_context *fuse_ctx, char *path)
int | read_headers_from_cache (struct fuse_context *fuse_ctx, char *filename, off_t *length, time_t *modified)
int | write_headers_to_cache (struct fuse_context *fuse_ctx, char *filename, off_t length, time_t modified)
int | write_block_to_cache (struct fuse_context *fuse_ctx, char *filename, off_t start, off_t finish)
void | drop_cache_blocks (struct fuse_context *fuse_ctx, char *filename)
int | slashgrid_rename (const char *oldpath, const char *newpath)
int | slashgrid_unlink (const char *path)
int | slashgrid_rmdir (const char *path)
int | slashgrid_mknod (const char *path, mode_t mode, dev_t dev)
int | slashgrid_mkdir (const char *path, mode_t mode)
int | slashgrid_chown (const char *path, uid_t uid, gid_t gid)
int | slashgrid_chmod (const char *path, mode_t mode)
int | slashgrid_truncate (const char *path, off_t offset)
int | slashgrid_statfs (const char *path, struct statfs *fs)
void * | slashgrid_init (void)
void | slashgrid_destroy (void *p)
int | slashgrid_logfunc (char *file, int line, int level, char *fmt,...)
int | main (int argc, char *argv[])

## Variables

struct grst_handle | handles [GRST_SLASH_MAX_HANDLES]
pthread_mutex_t | cache_mutex
int | debugmode = 0
int | number_of_tries = 1
int | sitecast_domain_len = 0
char * | sitecast_domain = NULL
char * | sitecast_groups = NULL
char * | local_root = NULL
char * | gridmapdir = NULL
off_t | default_blocksize = GRST_SLASH_DEFAULT_BLOCKSIZE
uid_t | local_uid = 0
gid_t | local_gid = 0

## Function Documentation

## cleanup_recurse()

int cleanup_recurse | ( | char * | currentdirname | ) |

## cleanup_thread()

void* cleanup_thread | ( | void * | unused | ) |

## debug_callback()

int debug_callback | ( | CURL * | handle,
|  | curl_infotype | infotype,
|  | char * | rawmesg,
|  | size_t | size,
|  | void * | i
| ) |  |

## drop_cache_blocks()

void drop_cache_blocks | ( | struct fuse_context * | fuse_ctx,
|  | char * | filename
| ) |  |

## get_gaclPerm()

GRSTgaclPerm get_gaclPerm | ( | struct fuse_context * | fuse_ctx,
|  | char * | path
| ) |  |

## grst_dir_list_cmp()

int grst_dir_list_cmp | ( | const void * | a,
|  | const void * | b
| ) |  |

## headers_callback()

size_t headers_callback | ( | void * | ptr,
|  | size_t | size,
|  | size_t | nmemb,
|  | void * | p
| ) |  |

## index_to_dir_list()

struct grst_dir_list* index_to_dir_list | ( | char * | text,
|  | char * | source
| ) |  |

## main()

int main | ( | int | argc,
|  | char * | argv[]
| ) |  |

## mapdir_uid_to_dn()

char* mapdir_uid_to_dn | ( | uid_t | uid | ) |

## null_callback()

size_t null_callback | ( | void * | ptr,
|  | size_t | size,
|  | size_t | nmemb,
|  | void * | data
| ) |  |

## perform_request()

int perform_request | ( | struct grst_request * | request_data,
|  | struct fuse_context * | fuse_ctx
| ) |  |

## rawbody_callback()

size_t rawbody_callback | ( | void * | ptr,
|  | size_t | size,
|  | size_t | nmemb,
|  | void * | data
| ) |  |

## read_data_callback()

size_t read_data_callback | ( | void * | ptr,
|  | size_t | size,
|  | size_t | nmemb,
|  | void * | data
| ) |  |

## read_headers_from_cache()

int read_headers_from_cache | ( | struct fuse_context * | fuse_ctx,
|  | char * | filename,
|  | off_t * | length,
|  | time_t * | modified
| ) |  |

## slashgrid_chmod()

int slashgrid_chmod | ( | const char * | path,
|  | mode_t | mode
| ) |  |

## slashgrid_chown()

int slashgrid_chown | ( | const char * | path,
|  | uid_t | uid,
|  | gid_t | gid
| ) |  |

## slashgrid_destroy()

void slashgrid_destroy | ( | void * | p | ) |

## slashgrid_init()

void* slashgrid_init | ( | void |  | ) |

## slashgrid_logfunc()

int slashgrid_logfunc | ( | char * | file,
|  | int | line,
|  | int | level,
|  | char * | fmt,
|  |  | ...
| ) |  |

## slashgrid_mkdir()

int slashgrid_mkdir | ( | const char * | path,
|  | mode_t | mode
| ) |  |

## slashgrid_mknod()

int slashgrid_mknod | ( | const char * | path,
|  | mode_t | mode,
|  | dev_t | dev
| ) |  |

## slashgrid_rename()

int slashgrid_rename | ( | const char * | oldpath,
|  | const char * | newpath
| ) |  |

## slashgrid_rmdir()

int slashgrid_rmdir | ( | const char * | path | ) |

## slashgrid_statfs()

int slashgrid_statfs | ( | const char * | path,
|  | struct statfs * | fs
| ) |  |

## slashgrid_truncate()

int slashgrid_truncate | ( | const char * | path,
|  | off_t | offset
| ) |  |

## slashgrid_unlink()

int slashgrid_unlink | ( | const char * | path | ) |

## translate_sitecast_url()

int translate_sitecast_url | ( | char ** | sitecast_url,
|  | char * | raw_url
| ) |  |

## write_block_to_cache()

int write_block_to_cache | ( | struct fuse_context * | fuse_ctx,
|  | char * | filename,
|  | off_t | start,
|  | off_t | finish
| ) |  |

## write_headers_to_cache()

int write_headers_to_cache | ( | struct fuse_context * | fuse_ctx,
|  | char * | filename,
|  | off_t | length,
|  | time_t | modified
| ) |  |

## Variable Documentation

## cache_mutex

pthread_mutex_t cache_mutex

## debugmode

int debugmode = 0

## default_blocksize

off_t default_blocksize = GRST_SLASH_DEFAULT_BLOCKSIZE

## gridmapdir

char * gridmapdir = NULL

## handles

struct grst_handle handles[GRST_SLASH_MAX_HANDLES]

## local_gid

gid_t local_gid = 0

## local_root

char * local_root = NULL

## local_uid

uid_t local_uid = 0

## number_of_tries

int number_of_tries = 1

## sitecast_domain

char* sitecast_domain = NULL

## sitecast_domain_len

int sitecast_domain_len = 0

## sitecast_groups

char * sitecast_groups = NULL