diff options
Diffstat (limited to 'rpc')
| -rw-r--r-- | rpc/rpc-lib/src/rpc-transport.c | 12 | 
1 files changed, 6 insertions, 6 deletions
diff --git a/rpc/rpc-lib/src/rpc-transport.c b/rpc/rpc-lib/src/rpc-transport.c index 695261a71d9..c146fb63816 100644 --- a/rpc/rpc-lib/src/rpc-transport.c +++ b/rpc/rpc-lib/src/rpc-transport.c @@ -145,6 +145,7 @@ rpc_transport_load (glusterfs_ctx_t *ctx, dict_t *options, char *trans_name)  	int8_t is_tcp = 0, is_unix = 0, is_ibsdp = 0;  	volume_opt_list_t *vol_opt = NULL;          gf_boolean_t bind_insecure = _gf_false; +        xlator_t   *this = NULL;  	GF_VALIDATE_OR_GOTO("rpc-transport", options, fail);  	GF_VALIDATE_OR_GOTO("rpc-transport", ctx, fail); @@ -292,26 +293,26 @@ rpc_transport_load (glusterfs_ctx_t *ctx, dict_t *options, char *trans_name)                  goto fail;          } +        this = THIS;  	vol_opt->given_opt = dlsym (handle, "options");  	if (vol_opt->given_opt == NULL) {  		gf_log ("rpc-transport", GF_LOG_DEBUG,  			"volume option validation not specified");  	} else {                  INIT_LIST_HEAD (&vol_opt->list); -		list_add_tail (&vol_opt->list, &(THIS->volume_options)); -                if (xlator_options_validate_list (THIS, options, vol_opt, +		list_add_tail (&vol_opt->list, &(this->volume_options)); +                if (xlator_options_validate_list (this, options, vol_opt,                                                    NULL)) {  			gf_log ("rpc-transport", GF_LOG_ERROR,  				"volume option validation failed");  			goto fail;  		} -                vol_opt = NULL;  	}          trans->options = options;          pthread_mutex_init (&trans->lock, NULL); -        trans->xl = THIS; +        trans->xl = this;  	ret = trans->init (trans);  	if (ret != 0) { @@ -324,8 +325,6 @@ rpc_transport_load (glusterfs_ctx_t *ctx, dict_t *options, char *trans_name)          GF_FREE (name); -        GF_FREE (vol_opt); -  	return return_trans;  fail: @@ -340,6 +339,7 @@ fail:          GF_FREE (name); +        list_del_init (&vol_opt->list);          GF_FREE (vol_opt);          return NULL;  | 
