X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=xenserver%2Fopt_xensource_libexec_interface-reconfigure;h=ff4b97669c12caa7fe2f2e361546c518c33037bb;hb=c1a543a8d6d2847983b6b0defd1e19777da85715;hp=f16f681af97f0dee182494ca1edacf8a39a2be56;hpb=b63fadcfdc8a96ddb5e944b60733edf21999a1ad;p=sliver-openvswitch.git
diff --git a/xenserver/opt_xensource_libexec_interface-reconfigure b/xenserver/opt_xensource_libexec_interface-reconfigure
index f16f681af..ff4b97669 100755
--- a/xenserver/opt_xensource_libexec_interface-reconfigure
+++ b/xenserver/opt_xensource_libexec_interface-reconfigure
@@ -204,6 +204,8 @@ def ifup(netdev):
#
def pif_rename_physical_devices(pif):
+ if pif_is_tunnel(pif):
+ return
if pif_is_vlan(pif):
pif = pif_get_vlan_slave(pif)
@@ -286,7 +288,8 @@ def ipdev_configure_network(pif, dp):
"""
pifrec = db().get_pif_record(pif)
- nwrec = db().get_network_record(pifrec['network'])
+ nw = pifrec['network']
+ nwrec = db().get_network_record(nw)
ipdev = pif_ipdev_name(pif)
@@ -321,12 +324,13 @@ def ipdev_configure_network(pif, dp):
if len(offload):
f.write("ETHTOOL_OFFLOAD_OPTS=\"%s\"\n" % str.join(" ", offload))
- mtu = mtu_setting(nwrec['other_config'])
- if mtu:
- f.write("MTU=%s\n" % mtu)
-
ipdev_configure_static_routes(ipdev, nwrec['other_config'], f)
+ mtu = mtu_setting(nw, "Network", nwrec['other_config'])
+ if mtu:
+ f.write("MTU=%s\n" % mtu)
+
+
if pifrec.has_key('DNS') and pifrec['DNS'] != "":
ServerList = pifrec['DNS'].split(",")
for i in range(len(ServerList)): f.write("DNS%d=%s\n" % (i+1, ServerList[i]))
@@ -413,7 +417,7 @@ def action_up(pif, force):
pifrec = db().get_pif_record(pif)
ipdev = pif_ipdev_name(pif)
- dp = DatapathFactory(pif)
+ dp = DatapathFactory()(pif)
log("action_up: %s" % ipdev)
@@ -453,7 +457,7 @@ def action_up(pif, force):
def action_down(pif):
ipdev = pif_ipdev_name(pif)
- dp = DatapathFactory(pif)
+ dp = DatapathFactory()(pif)
log("action_down: %s" % ipdev)
@@ -461,6 +465,9 @@ def action_down(pif):
dp.bring_down()
+def action_rewrite():
+ DatapathFactory().rewrite()
+
# This is useful for reconfiguring the mgmt interface after having lost connectivity to the pool master
def action_force_rewrite(bridge, config):
def getUUID():
@@ -520,6 +527,8 @@ def action_force_rewrite(bridge, config):
f.write('\t\t\n')
f.write('\t\tOpaqueRef:NULL\n')
f.write('\t\t-1\n')
+ f.write('\t\t\n')
+ f.write('\t\t\n')
f.write('\t\t%s\n' % interface)
f.write('\t\t%s\n' % mac)
f.write('\t\t\n')
@@ -664,7 +673,7 @@ def main(argv=None):
pif = db().get_pif_by_uuid(pif_uuid)
if action == "rewrite":
- pass
+ action_rewrite()
else:
if not pif:
raise Usage("No PIF given")