diff options
| author | Milind Changire <mchangir@redhat.com> | 2019-01-22 12:10:59 +0530 | 
|---|---|---|
| committer | Amar Tumballi <amarts@redhat.com> | 2019-01-22 13:47:19 +0000 | 
| commit | b6c417785e54620331ae35d6971fe8bef98b4619 (patch) | |
| tree | 828099423d2cc2cfee056b0431ebd54a205d533f /glusterfsd/src/glusterfsd-mgmt.c | |
| parent | 67bc3775685198b9ab10c1f2a0d957b157bb4acd (diff) | |
rpc: use address-family option from vol file
This patch helps enable IPv6 connections in the cluster.
The default address-family is IPv4 without using this option explicitly.
When address-family is set to "inet6" in the /etc/glusterfs/glusterd.vol
file, the mount command-line also needs to have
-o xlator-option="transport.address-family=inet6" added to it.
This option also gets added to the brick command-line.
Snapshot and gfapi use-cases should also use this option to pass in the
inet6 address-family.
Change-Id: I97db91021af27bacb6d7578e33ea4817f66d7270
fixes: bz#1635863
Signed-off-by: Milind Changire <mchangir@redhat.com>
Diffstat (limited to 'glusterfsd/src/glusterfsd-mgmt.c')
| -rw-r--r-- | glusterfsd/src/glusterfsd-mgmt.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/glusterfsd/src/glusterfsd-mgmt.c b/glusterfsd/src/glusterfsd-mgmt.c index 7c5ce523d26..f8934b184ed 100644 --- a/glusterfsd/src/glusterfsd-mgmt.c +++ b/glusterfsd/src/glusterfsd-mgmt.c @@ -2645,6 +2645,7 @@ glusterfs_mgmt_init(glusterfs_ctx_t *ctx)      int ret = -1;      int port = GF_DEFAULT_BASE_PORT;      char *host = NULL; +    xlator_cmdline_option_t *opt = NULL;      cmd_args = &ctx->cmd_args;      GF_VALIDATE_OR_GOTO(THIS->name, cmd_args->volfile_server, out); @@ -2663,7 +2664,9 @@ glusterfs_mgmt_init(glusterfs_ctx_t *ctx)          !strcmp(cmd_args->volfile_server_transport, "unix")) {          ret = rpc_transport_unix_options_build(&options, host, 0);      } else { -        ret = rpc_transport_inet_options_build(&options, host, port); +        opt = find_xlator_option_in_cmd_args_t("address-family", cmd_args); +        ret = rpc_transport_inet_options_build(&options, host, port, +                                               (opt ? opt->value : NULL));      }      if (ret)          goto out;  | 
