Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12:Update
yast2-cluster
bsc971961_fix_error_of_using_ipv6.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bsc971961_fix_error_of_using_ipv6.patch of Package yast2-cluster
diff -Naur yast2-cluster-3.1.19.orig/src/include/cluster/dialogs.rb yast2-cluster-3.1.19/src/include/cluster/dialogs.rb --- yast2-cluster-3.1.19.orig/src/include/cluster/dialogs.rb 2016-03-25 16:29:27.456706189 +0800 +++ yast2-cluster-3.1.19/src/include/cluster/dialogs.rb 2016-03-25 16:30:34.754703359 +0800 @@ -590,9 +590,11 @@ netaddr = Convert.to_string(UI.QueryWidget(Id(ret), :Value)) ip6 = IP.Check6(netaddr) if ip6 + Cluster.ip_version = "ipv6" UI.ChangeWidget(Id(:autoid), :Value, false) UI.ChangeWidget(Id(:autoid), :Enabled, false) else + Cluster.ip_version = "ipv4" UI.ChangeWidget(Id(:autoid), :Enabled, true) end next diff -Naur yast2-cluster-3.1.19.orig/src/modules/Cluster.rb yast2-cluster-3.1.19/src/modules/Cluster.rb --- yast2-cluster-3.1.19.orig/src/modules/Cluster.rb 2016-03-25 16:29:27.454706189 +0800 +++ yast2-cluster-3.1.19/src/modules/Cluster.rb 2016-03-25 16:33:13.713696674 +0800 @@ -67,6 +67,7 @@ # Settings: Define all variables needed for configuration of cluster @secauth = false @cluster_name = "" + @ip_version = "" @expected_votes = "" @two_node = "0" @config_format = "" @@ -162,6 +163,8 @@ @cluster_name = SCR.Read(path(".openais.totem.cluster_name")) + @ip_version = SCR.Read(path(".openais.totem.ip_version")) + @expected_votes = SCR.Read(path(".openais.quorum.expected_votes")).to_s @config_format = SCR.Read(path(".openais.totem.interface.member.memberaddr")).to_s @@ -179,7 +182,7 @@ # 123.3.21.44;156.32.123.9" address = SCR.Read(path(".openais.nodelist.node")).split(" ") address.each do |addr| - p = addr.split(":") + p = addr.split("-") if p[1] != nil q = p[0].split(";") if q[1] != nil @@ -253,9 +256,9 @@ address_string << i[:addr1] if i[:addr2] address_string << ";#{i[:addr2]}" - address_string << ":#{i[:nodeid]}" if i [:nodeid] + address_string << "-#{i[:nodeid]}" if i [:nodeid] else - address_string << ":#{i[:nodeid]}" if i[:nodeid] + address_string << "-#{i[:nodeid]}" if i[:nodeid] end address_string << " " end @@ -273,6 +276,7 @@ SCR.Write(path(".openais.totem.transport"), @transport) SCR.Write(path(".openais.totem.cluster_name"), @cluster_name) + SCR.Write(path(".openais.totem.ip_version"), @ip_version) SCR.Write(path(".openais.quorum.expected_votes"), @expected_votes) # BNC#871970, only write member address when interface0 @@ -617,6 +621,7 @@ @memberaddr = Ops.get_list(settings, "memberaddr", []) @mcastaddr1 = Ops.get_string(settings, "mcastaddr1", "") @cluster_name = settings["cluster_name"] || "" + @ip_version = settings["ip_version"] || "ipv4" @expected_votes = settings["expected_votes"] || "" @two_node = settings["two_node"] || "" @mcastport2 = Ops.get_string(settings, "mcastport1", "") @@ -649,6 +654,7 @@ Ops.set(result, "memberaddr", @memberaddr) Ops.set(result, "mcastaddr1", @mcastaddr1) result["cluster_name"] = @cluster_name + result["ip_version"] = @ip_version result["expected_votes"] = @expected_votes result["two_node"] = @two_node Ops.set(result, "mcastport1", @mcastport1) @@ -740,6 +746,7 @@ publish :variable => :bindnetaddr1, :type => "string" publish :variable => :mcastaddr1, :type => "string" publish :variable => :cluster_name, :type => "string" + publish :variable => :ip_version, :type => "string" publish :variable => :expected_votes, :type => "string" publish :variable => :two_node, :type => "string" publish :variable => :config_format, :type => "string" diff -Naur yast2-cluster-3.1.19.orig/src/servers_non_y2/ag_openais yast2-cluster-3.1.19/src/servers_non_y2/ag_openais --- yast2-cluster-3.1.19.orig/src/servers_non_y2/ag_openais 2016-03-25 16:29:27.455706189 +0800 +++ yast2-cluster-3.1.19/src/servers_non_y2/ag_openais 2016-03-25 16:38:43.782682793 +0800 @@ -107,6 +107,7 @@ "type":"int", "default_value":10}, "rrp_token_expired_timeout":{"doc":"This specifies the time in milliseconds to increment the problem counter for the redundant ring protocol after not having received a token from all rings for a particular processor.", "type":"int", "default_value":47}, "transport":{"doc":"Transport protocol", "type":"select[udp,udpu]","default_value":"udp"}, + "ip_version":{"doc":"Specifies version of IP to use for communication. Value can be one of ipv4 or ipv6.", "type":"select[ipv4,ipv6]","default_value":"ipv4"}, } @@ -352,7 +353,9 @@ i = get_next_line(file) continue - opt = i.split(":") + tmp_opt = i.split(":") + opt = [tmp_opt[0], ":".join(tmp_opt[1:])] + try: doc = options[opt[0].strip()]["doc"] except KeyError: @@ -420,7 +423,7 @@ member_str = member_str + ";" + address2 nodeid = item.get("nodeid", None) if nodeid: - member_str = member_str + ":" + nodeid + member_str = member_str + "-" + nodeid member_str = member_str + " " return '"%s"' % member_str.strip() @@ -468,7 +471,7 @@ return '["quorum", "totem", "nodelist"]' elif path_arr[0] == 'totem': if len(path_arr) == 1: - return '["crypto_cipher","crypto_hash","secauth", "autoid", "rrpmode", "transport", "interface", "cluster_name"]' + return '["crypto_cipher","crypto_hash","secauth", "autoid", "rrpmode", "transport", "interface", "cluster_name", "ip_version"]' else: if path_arr[1] == 'interface': if len(path_arr) == 2: @@ -525,6 +528,8 @@ return '"%s"' % totem_options.get("transport", "udp") elif path[1] == "cluster_name": return '"%s"' % totem_options.get("cluster_name", "cluster") + elif path[1] == "ip_version": + return '"%s"' % totem_options.get("ip_version", "ipv4") else: return "nil" elif len(path) == 4: @@ -633,6 +638,9 @@ elif path[1] == "cluster_name": totem_options["cluster_name"] = args return "true" + elif path[1] == "ip_version": + totem_options["ip_version"] = args + return "true" else: return "false" elif len(path) == 3: @@ -703,16 +711,16 @@ nodelist_options["node"] = member_addr_set return "nil" for member_address in args.strip().split(" "): - colon_pos = member_address.find(":") - if (colon_pos > -1): - tmpid = member_address[colon_pos+1:] - semicolon_pos = member_address[:colon_pos].find(";") + dash_pos = member_address.find("-") + if (dash_pos > -1): + tmpid = member_address[dash_pos+1:] + semicolon_pos = member_address[:dash_pos].find(";") if (semicolon_pos > -1): - member_addr_set.append({"ring0_addr":member_address[:semicolon_pos],"ring1_addr":member_address[semicolon_pos+1:colon_pos],"nodeid":member_address[colon_pos+1:]}) + member_addr_set.append({"ring0_addr":member_address[:semicolon_pos],"ring1_addr":member_address[semicolon_pos+1:dash_pos],"nodeid":member_address[dash_pos+1:]}) else: - member_addr_set.append({"ring0_addr":member_address[:colon_pos],"nodeid":member_address[colon_pos+1:]}) + member_addr_set.append({"ring0_addr":member_address[:dash_pos],"nodeid":member_address[dash_pos+1:]}) else: - semicolon_pos = member_address[:colon_pos].find(";") + semicolon_pos = member_address[:dash_pos].find(";") if (semicolon_pos > -1): member_addr_set.append({"ring0_addr":member_address[:semicolon_pos],"ring1_addr":member_address[semicolon_pos+1:]}) else:
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor