diff options
author | Kaushal M <kaushal@gluster.com> | 2011-09-12 15:14:26 +0530 |
---|---|---|
committer | Vijay Bellur <vijay@gluster.com> | 2012-02-03 07:41:51 -0800 |
commit | 08041c321229bdfb2cbe1b638fb4fabb0b9da013 (patch) | |
tree | 7aa13f5afc4d712b82a80857fa0502d5e6534acd /libglusterfs | |
parent | 3ec7680a70bcace6b195ae412362b7e1b072eaeb (diff) |
protocol/client : prevent client from reconnecting when server
authentication fails
This prevents the client from trying to reconnect on server
authentication failure. Reconnecting on authentcation failure causes hung
mounts on unauthorised clients. This patch fixes this problem.
Also, mount.glusterfs script unmounts mount-point on mount failure to
prevent hung mounts.
Change-Id: I5615074d27948077bad491a38cecae1b7f5159fb
BUG: 765240
Signed-off-by: Kaushal M <kaushal@redhat.com>
Reviewed-on: http://review.gluster.com/398
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Diffstat (limited to 'libglusterfs')
-rw-r--r-- | libglusterfs/src/defaults.c | 3 | ||||
-rw-r--r-- | libglusterfs/src/globals.c | 1 | ||||
-rw-r--r-- | libglusterfs/src/glusterfs.h | 1 |
3 files changed, 4 insertions, 1 deletions
diff --git a/libglusterfs/src/defaults.c b/libglusterfs/src/defaults.c index df208c8805a..be2c9c55f4c 100644 --- a/libglusterfs/src/defaults.c +++ b/libglusterfs/src/defaults.c @@ -1248,9 +1248,10 @@ default_notify (xlator_t *this, int32_t event, void *data, ...) case GF_EVENT_CHILD_MODIFIED: case GF_EVENT_CHILD_DOWN: case GF_EVENT_CHILD_UP: + case GF_EVENT_AUTH_FAILED: { xlator_list_t *parent = this->parents; - /* Handle case of CHILD_* event specially, send it to fuse */ + /* Handle case of CHILD_* & AUTH_FAILED event specially, send it to fuse */ if (!parent && this->ctx && this->ctx->master) xlator_notify (this->ctx->master, event, this->graph, NULL); diff --git a/libglusterfs/src/globals.c b/libglusterfs/src/globals.c index 8b641123f15..9355a3a4672 100644 --- a/libglusterfs/src/globals.c +++ b/libglusterfs/src/globals.c @@ -396,6 +396,7 @@ char eventstring[GF_EVENT_MAXVAL+1][64] = { "New Volfile", "Translator Info", "Trigger Volume Heal", + "Authentication Failed", "Invalid event", }; diff --git a/libglusterfs/src/glusterfs.h b/libglusterfs/src/glusterfs.h index 0642973cbad..680f0de98f2 100644 --- a/libglusterfs/src/glusterfs.h +++ b/libglusterfs/src/glusterfs.h @@ -379,6 +379,7 @@ typedef enum { GF_EVENT_GRAPH_NEW, GF_EVENT_TRANSLATOR_INFO, GF_EVENT_TRIGGER_HEAL, + GF_EVENT_AUTH_FAILED, GF_EVENT_MAXVAL, } glusterfs_event_t; |