From 35bf3f058473b61605fd28cd9cbee7726adedf9d Mon Sep 17 00:00:00 2001 From: Shehjar Tikoo Date: Mon, 11 May 2009 18:22:57 +0530 Subject: libglusterfsclient: Add seekdir API Signed-off-by: Anand V. Avati --- libglusterfsclient/src/libglusterfsclient.c | 19 +++++++++++++++++++ libglusterfsclient/src/libglusterfsclient.h | 13 +++++++++++++ 2 files changed, 32 insertions(+) (limited to 'libglusterfsclient') diff --git a/libglusterfsclient/src/libglusterfsclient.c b/libglusterfsclient/src/libglusterfsclient.c index 3321630d..b4a7e6e5 100755 --- a/libglusterfsclient/src/libglusterfsclient.c +++ b/libglusterfsclient/src/libglusterfsclient.c @@ -6449,6 +6449,25 @@ out: return; } +void +glusterfs_seekdir (glusterfs_dir_t dirfd, off_t offset) +{ + libglusterfs_client_fd_ctx_t *fd_ctx = NULL; + + fd_ctx = libgf_get_fd_ctx ((fd_t *)dirfd); + if (!fd_ctx) + goto out; + + pthread_mutex_lock (&fd_ctx->lock); + { + fd_ctx->offset = offset; + } + pthread_mutex_unlock (&fd_ctx->lock); + +out: + return; +} + static struct xlator_fops libgf_client_fops = { }; diff --git a/libglusterfsclient/src/libglusterfsclient.h b/libglusterfsclient/src/libglusterfsclient.h index ccf115f1..70c6669d 100755 --- a/libglusterfsclient/src/libglusterfsclient.h +++ b/libglusterfsclient/src/libglusterfsclient.h @@ -1204,6 +1204,19 @@ glusterfs_lchown (const char *path, uid_t owner, gid_t group); */ void glusterfs_rewinddir (glusterfs_dir_t dirfd); + + + +/* Seek to the given offset in the directory handle. + * + * @dirfd : Directory handle returned by glusterfs_open on + * glusterfs_opendir. + * @offset : The offset to seek to. + * + * Returns no value. + */ +void +glusterfs_seekdir (glusterfs_dir_t dirfd, off_t offset); /* FIXME: review the need for these apis */ /* added for log related initialization in booster fork implementation */ void -- cgit