Add Mininet object to locals as 'net'
This commit is contained in:
+4
-1
@@ -46,6 +46,9 @@ class CLI( Cmd ):
|
|||||||
self.nodemap = {} # map names to Node objects
|
self.nodemap = {} # map names to Node objects
|
||||||
for node in self.nodelist:
|
for node in self.nodelist:
|
||||||
self.nodemap[ node.name ] = node
|
self.nodemap[ node.name ] = node
|
||||||
|
# Local variable bindings for py command
|
||||||
|
self.locals = { 'net': mininet }
|
||||||
|
self.locals.update( self.nodemap )
|
||||||
# Attempt to handle input
|
# Attempt to handle input
|
||||||
self.stdin = stdin
|
self.stdin = stdin
|
||||||
self.inPoller = poll()
|
self.inPoller = poll()
|
||||||
@@ -124,7 +127,7 @@ class CLI( Cmd ):
|
|||||||
"""Evaluate a Python expression.
|
"""Evaluate a Python expression.
|
||||||
Node names may be used, e.g.: h1.cmd('ls')"""
|
Node names may be used, e.g.: h1.cmd('ls')"""
|
||||||
try:
|
try:
|
||||||
result = eval( line, globals(), self.nodemap )
|
result = eval( line, globals(), self.locals )
|
||||||
if not result:
|
if not result:
|
||||||
return
|
return
|
||||||
elif isinstance( result, str ):
|
elif isinstance( result, str ):
|
||||||
|
|||||||
Reference in New Issue
Block a user