Fixed Typos
Fixed the issue of LINC not sending traffic through taps.
-Solved by creating and bring taps UP before LINC gets started.
Change-Id: I145f5357f984befc549ed02cd57b13b7e0f7ff3c
diff --git a/tools/test/topos/opticalUtils.py b/tools/test/topos/opticalUtils.py
index b645c14..b5147fe 100644
--- a/tools/test/topos/opticalUtils.py
+++ b/tools/test/topos/opticalUtils.py
@@ -264,6 +264,9 @@
output = quietRun( 'cp -v sys.config %s/rel/linc/releases/1.0/' % lincDir, shell=True ).strip( '\n' )
info( output + '\n' )
+ info( '*** Adding taps and bring them up...\n' )
+ setupInts( getTaps() )
+
info( '*** Starting linc OE...\n' )
output = quietRun( '%s/rel/linc/bin/linc start' % lincDir, shell=True )
if output:
@@ -387,6 +390,30 @@
if 'port,%s' % port in intfLine:
return re.findall( 'tap\d+', intfLine )[ 0 ]
+def getTaps(path = None):
+ '''
+ return list of all the tops in sys.config
+ '''
+ if path is None:
+ lincDir = findDir( 'linc-oe' )
+ if not lincDir:
+ error( '***ERROR: Could not find linc-oe in users home directory\n' )
+ return None
+ path = '%s/rel/linc/releases/1.0/sys.config' % lincDir
+ fd = open( path, 'r', 0 )
+ sys_data = fd.read()
+ taps = re.findall( 'tap\d+', sys_data )
+ fd.close()
+ return taps
+
+def setupInts(intfs):
+ '''
+ add taps and bring them up.
+ '''
+ for i in intfs:
+ quietRun( 'ip tuntap add dev %s mode tap' %i )
+ quietRun( 'ip link set dev %s up' % i )
+ info( '*** Intf %s set\n' % i )
class MininetOE( Mininet ):
"Mininet with Linc-OE support (starts and stops linc-oe)"