From 47be38e63cf21b61d9f8bdbde9801c26dad10cdd Mon Sep 17 00:00:00 2001 From: Bob Lantz Date: Tue, 23 Sep 2014 13:45:20 -0700 Subject: [PATCH] Don't install lua plugin for wireshark 1.12+ Apparently there is a conflict where the lua plugin conflicts with the built-in dissector for openflow that is included with 1.12 and up. For now, we will just not install the plugin. This should fix the 14.10 VM build. Additionally, I have added a handy function, version_ge, which compares version numbers in canonical x.y.z format. Thanks to stackoverflow for pointing out the incredibly useful sort -V option! --- util/install.sh | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/util/install.sh b/util/install.sh index 7036b46..5ccc3d5 100755 --- a/util/install.sh +++ b/util/install.sh @@ -74,6 +74,17 @@ fi # More distribution info DIST_LC=`echo $DIST | tr [A-Z] [a-z]` # as lower case + +# Determine whether version $1 >= version $2 +# usage: if version_ge 1.20 1.2.3; then echo "true!"; fi +function version_ge { + # sort -V sorts by *version number* + latest=`printf "$1\n$2" | sort -V | tail -1` + # If $1 is latest version, then $1 >= $2 + [ "$1" == "$latest" ] +} + + # Kernel Deb pkg to be removed: KERNEL_IMAGE_OLD=linux-image-2.6.26-33-generic @@ -196,6 +207,7 @@ function of13 { cd $BUILD_DIR } + function wireshark { echo "Installing Wireshark" if [ "$DIST" = "Fedora" ]; then @@ -204,6 +216,13 @@ function wireshark { $install wireshark tshark fi + echo "Checking Wireshark version" + WSVER=`wireshark -v | egrep -o '[0-9\.]+' | head -1` + if version_ge $WSVER 1.12; then + echo "Wireshark version $WSVER >= 1.12 - returning" + return + fi + echo "Cloning LoxiGen and building openflow.lua dissector" cd $BUILD_DIR git clone https://github.com/floodlight/loxigen.git @@ -233,7 +252,7 @@ function ubuntuOvs { OVS_SRC=$BUILD_DIR/openvswitch OVS_TARBALL_LOC=http://openvswitch.org/releases - if [ "$DIST" = "Ubuntu" ] && [ `expr $RELEASE '>=' 12.04` = 1 ]; then + if [ "$DIST" = "Ubuntu" ] && version_ge $RELEASE 12.04; then rm -rf $OVS_SRC mkdir -p $OVS_SRC cd $OVS_SRC @@ -382,7 +401,7 @@ function nox { # Apply patches git checkout -b tutorial-destiny git am $MININET_DIR/mininet/util/nox-patches/*tutorial-port-nox-destiny*.patch - if [ "$DIST" = "Ubuntu" ] && [ `expr $RELEASE '>=' 12.04` = 1 ]; then + if [ "$DIST" = "Ubuntu" ] && version_ge $RELEASE 12.04; then git am $MININET_DIR/mininet/util/nox-patches/*nox-ubuntu12-hacks.patch fi