From ede57babcca0e65f13a947576c100f617af0def8 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Thu, 8 Jul 2010 14:25:51 +0100 Subject: [PATCH] [PATCH] xenserver: Hoist identical bridge and vswitch functions into common code. From 96c7918c4043326bfa0e05b3fc9cbb9547279d40 Mon Sep 17 00:00:00 2001 Date: Tue, 23 Feb 2010 09:47:31 -0800 The previous commit made pif_bridge_name() in the bridge and vswitch versions of interface-reconfigure functionally identical, so this commit hoists them into a single common implementation in InterfaceReconfigure.py. pif_is_bridged() also comes along for the ride because it is also generic and because it is logically related. Only the bridge code uses it at the moment. Suggested-by: Ian Campbell Signed-off-by: Ben Pfaff Signed-off-by: Ian Campbell --- .../opt_xensource_libexec_InterfaceReconfigure.py | 28 ++++++++++++++++++++ ...xensource_libexec_InterfaceReconfigureBridge.py | 28 -------------------- ...ensource_libexec_InterfaceReconfigureVswitch.py | 16 ----------- 3 files changed, 28 insertions(+), 44 deletions(-) --- scripts/InterfaceReconfigure.py | 28 ++++++++++++++++++++++++++ scripts/InterfaceReconfigureBridge.py | 28 -------------------------- scripts/InterfaceReconfigureVswitch.py | 16 --------------- 3 files changed, 28 insertions(+), 44 deletions(-) diff --git a/scripts/InterfaceReconfigure.py b/scripts/InterfaceReconfigure.py index 8f04bb8d..78b7ab93 100644 --- a/scripts/InterfaceReconfigure.py +++ b/scripts/InterfaceReconfigure.py @@ -658,6 +658,34 @@ def pif_netdev_name(pif): else: return pifrec['device'] +# +# Bridges +# + +def pif_is_bridged(pif): + pifrec = db().get_pif_record(pif) + nwrec = db().get_network_record(pifrec['network']) + + if nwrec['bridge']: + # TODO: sanity check that nwrec['bridgeless'] != 'true' + return True + else: + # TODO: sanity check that nwrec['bridgeless'] == 'true' + return False + +def pif_bridge_name(pif): + """Return the bridge name of a pif. + + PIF must be a bridged PIF.""" + pifrec = db().get_pif_record(pif) + + nwrec = db().get_network_record(pifrec['network']) + + if nwrec['bridge']: + return nwrec['bridge'] + else: + raise Error("PIF %(uuid)s does not have a bridge name" % pifrec) + # # Bonded PIFs # diff --git a/scripts/InterfaceReconfigureBridge.py b/scripts/InterfaceReconfigureBridge.py index 99e78c15..dba3c705 100644 --- a/scripts/InterfaceReconfigureBridge.py +++ b/scripts/InterfaceReconfigureBridge.py @@ -135,34 +135,6 @@ def destroy_bond_device(pif): __destroy_bond_device(name) -# -# Bridges -# - -def pif_is_bridged(pif): - pifrec = db().get_pif_record(pif) - nwrec = db().get_network_record(pifrec['network']) - - if nwrec['bridge']: - # TODO: sanity check that nwrec['bridgeless'] != 'true' - return True - else: - # TODO: sanity check that nwrec['bridgeless'] == 'true' - return False - -def pif_bridge_name(pif): - """Return the bridge name of a pif. - - PIF must be a bridged PIF.""" - pifrec = db().get_pif_record(pif) - - nwrec = db().get_network_record(pifrec['network']) - - if nwrec['bridge']: - return nwrec['bridge'] - else: - raise Error("PIF %(uuid)s does not have a bridge name" % pifrec) - # # Bring Interface up/down. # diff --git a/scripts/InterfaceReconfigureVswitch.py b/scripts/InterfaceReconfigureVswitch.py index 13bee083..f63cf7d3 100644 --- a/scripts/InterfaceReconfigureVswitch.py +++ b/scripts/InterfaceReconfigureVswitch.py @@ -36,22 +36,6 @@ def netdev_up(netdev, mtu=None): run_command(["/sbin/ifconfig", netdev, 'up'] + mtu) -# -# Bridges -# - -def pif_bridge_name(pif): - """Return the bridge name of a pif. - - PIF must be a bridged PIF.""" - - pifrec = db().get_pif_record(pif) - nwrec = db().get_network_record(pifrec['network']) - if nwrec['bridge']: - return nwrec['bridge'] - else: - raise Error("PIF %(uuid)s does not have a bridge name" % pifrec) - # # PIF miscellanea # -- 2.39.5