-save_flows () {
- if set X `ovs_vsctl list-br`; then
- shift
- if "$datadir/scripts/ovs-save" save-flows "$@" > "$script_flows"; then
- chmod +x "$script_flows"
- return 0
- fi
+ovs_save () {
+ bridges=`ovs_vsctl -- --real list-br`
+ if [ -n "${bridges}" ] && \
+ "$datadir/scripts/ovs-save" "$1" ${bridges} > "$2"; then
+ chmod +x "$2"
+ return 0
+ fi
+ [ -z "${bridges}" ] && return 0
+}
+
+save_ofports_if_required () {
+ # Save OpenFlow port numbers if we are upgrading from a pre-1.10 branch.
+ #
+ # (Versions 1.10 and later save OpenFlow port numbers without assistance,
+ # so we don't have to do anything for them.
+ case `ovs-appctl version | sed 1q` in
+ "ovs-vswitchd (Open vSwitch) 1."[0-9].*)
+ action "Saving ofport values" ovs_save save-ofports \
+ "${script_ofports}"
+ ;;
+ esac
+}
+
+save_flows_if_required () {
+ if test X"$DELETE_BRIDGES" != Xyes; then
+ action "Saving flows" ovs_save save-flows "${script_flows}"