diff options
author | Jeff Darcy <jdarcy@redhat.com> | 2013-02-07 13:57:42 -0500 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2013-02-17 12:04:48 -0800 |
commit | fcc230c99dd7318c2bee54beaa152b5a8c66f186 (patch) | |
tree | b8734e799d7610be989b692ef0021100fc847f9f /xlators/debug/trace | |
parent | 614529c59123d3f2a20a6ee9a99d362a7d35e5b1 (diff) |
features: add a directory-protection translator
This is useful to find all calls that remove a file from the protected
directory, including renames and internal calls. Such calls will cause
a stack trace to be logged. There's a filter script to add the needed
translators, and then the new functionality can be invoked with one of
the following commands.
setfattr -n trusted.glusterfs.protect -v log $dir
setfattr -n trusted.glusterfs.protect -v reject $dir
setfattr -n trusted.glusterfs.protect -v anything_else $dir
The first logs calls, but still allows them. The second rejects them
with EPERM. The third turns off protection for that directory.
Change-Id: Iee4baaf8e837106be2b4099542cb7dcaae40428c
BUG: 888072
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.org/4496
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/debug/trace')
-rw-r--r-- | xlators/debug/trace/src/trace.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/xlators/debug/trace/src/trace.c b/xlators/debug/trace/src/trace.c index 1215dd61493..a9c11babec2 100644 --- a/xlators/debug/trace/src/trace.c +++ b/xlators/debug/trace/src/trace.c @@ -280,8 +280,8 @@ trace_readdirp_cbk (call_frame_t *frame, void *cookie, xlator_t *this, LOG_ELEMENT (conf, string); } - TRACE_STACK_UNWIND (readdirp, frame, op_ret, op_errno, buf, xdata); out: + TRACE_STACK_UNWIND (readdirp, frame, op_ret, op_errno, buf, xdata); return 0; } |