summaryrefslogtreecommitdiffstats
path: root/api
diff options
context:
space:
mode:
authorMilind Changire <mchangir@redhat.com>2019-01-22 12:10:59 +0530
committerAmar Tumballi <amarts@redhat.com>2019-01-22 13:47:19 +0000
commitb6c417785e54620331ae35d6971fe8bef98b4619 (patch)
tree828099423d2cc2cfee056b0431ebd54a205d533f /api
parent67bc3775685198b9ab10c1f2a0d957b157bb4acd (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 'api')
-rw-r--r--api/src/glfs-mgmt.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/api/src/glfs-mgmt.c b/api/src/glfs-mgmt.c
index e8ad020c752..d502b4f46b6 100644
--- a/api/src/glfs-mgmt.c
+++ b/api/src/glfs-mgmt.c
@@ -697,9 +697,9 @@ volfile:
* volfile if topology hasn't changed.
* glusterfs_volfile_reconfigure returns 3 possible return states
* return 0 =======> reconfiguration of options has succeeded
- * return 1 =======> the graph has to be reconstructed and all the
- * xlators should be inited return -1(or -ve) =======> Some Internal Error
- * occurred during the operation
+ * return 1 =======> the graph has to be reconstructed and all
+ * the xlators should be inited return -1(or -ve) =======> Some Internal
+ * Error occurred during the operation
*/
pthread_mutex_lock(&fs->mutex);
@@ -1031,7 +1031,10 @@ glfs_mgmt_init(struct glfs *fs)
!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);
+ xlator_cmdline_option_t *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)