#
-proc host.cfggen { node } {
+set MODULE host
+
+proc $MODULE.cfggen { node } {
global $node
set cfg {}
}
-proc host.bootcmd { node } {
+proc $MODULE.bootcmd { node } {
return "/bin/sh"
}
-proc host.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
global env
return "$env(SHELL)"
}
-proc host.instantiate { eid node } {
+proc $MODULE.instantiate { eid node } {
l3node.instantiate $eid $node
return
}
-proc host.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
return [l3node.nghook $eid $node $ifc]
}
#
-proc hub.instantiate { eid node } {
+set MODULE hub
+
+
+proc $MODULE.instantiate { eid node } {
catch {exec ngctl mkpeer hub anchor anchor | tail -1} resp
foreach elem [split [lindex [split $resp "\{\}"] 1]] {
if {[string equal -length 5 $elem "id=0x"]} {
}
-proc hub.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
set ifunit [string range $ifc 1 end]
return [list $eid\_$node link$ifunit]
}
-proc hub.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
return
}
#
-proc lanswitch.instantiate { eid node } {
+set MODULE lanswitch
+
+
+proc $MODULE.instantiate { eid node } {
catch {exec ngctl mkpeer bridge anchor anchor | tail -1} resp
foreach elem [split [lindex [split $resp "\{\}"] 1]] {
if {[string equal -length 5 $elem "id=0x"]} {
}
-proc lanswitch.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
set ifunit [string range $ifc 1 end]
return [list $eid\_$node link$ifunit]
}
-proc lanswitch.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
return
}
#
-proc pc.cfggen { node } {
+set MODULE pc
+
+
+proc $MODULE.cfggen { node } {
global $node
set cfg {}
}
-proc pc.bootcmd { node } {
+proc $MODULE.bootcmd { node } {
return "/bin/sh"
}
-proc pc.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
global env
return "$env(SHELL)"
}
-proc pc.instantiate { eid node } {
+proc $MODULE.instantiate { eid node } {
l3node.instantiate $eid $node
return
}
-proc pc.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
return [l3node.nghook $eid $node $ifc]
}
#
-proc router.quagga.cfggen { node } {
+set MODULE router.quagga
+
+
+proc $MODULE.cfggen { node } {
global $node
set cfg {}
lappend cfg " shutdown"
}
lappend cfg "!"
-#exec vimage $node ifconfig $ifc [getIfcOperState $node $ifc] # XXX!!!
}
foreach proto { rip ripng ospf bgp } {
}
-proc router.quagga.bootcmd { node } {
+proc $MODULE.bootcmd { node } {
global ROOTDIR LIBDIR
return "$ROOTDIR/$LIBDIR/quaggaboot.sh"
}
-proc router.quagga.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
return "vtysh"
}
-proc router.quagga.instantiate { eid node } {
+proc $MODULE.instantiate { eid node } {
set node_id "$eid\_$node"
l3node.instantiate $eid $node
exec vimage $node_id sysctl net.inet.ip.forwarding=1
}
-proc router.quagga.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
return [l3node.nghook $eid $node $ifc]
}
#
-proc router.static.cfggen { node } {
+set MODULE router.static
+
+
+proc $MODULE.cfggen { node } {
global $node
set cfg {}
}
-proc router.static.bootcmd { node } {
+proc $MODULE.bootcmd { node } {
return "/bin/sh"
}
-proc router.static.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
global env
return "$env(SHELL)"
}
-proc router.static.instantiate { eid node } {
+proc $MODULE.instantiate { eid node } {
set node_id "$eid\_$node"
l3node.instantiate $eid $node
exec vimage $node_id sysctl net.inet.ip.forwarding=1
}
-proc router.static.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
return [l3node.nghook $eid $node $ifc]
}
#
-proc router.xorp.cfggen { node } {
+set MODULE router.xorp
+
+
+proc $MODULE.cfggen { node } {
global $node
set cfg {}
}
-proc router.xorp.bootcmd { node } {
+proc $MODULE.bootcmd { node } {
return "/usr/local/xorp/bin/xorp_rtrmgr -b"
}
-proc router.xorp.shellcmd { node } {
+proc $MODULE.shellcmd { node } {
return "/usr/local/xorp/bin/xorpsh"
}
-proc router.xorp.instantiate { eid node } {
+proc $MODULE.instantiate { eid node } {
set node_id "$eid\_$node"
l3node.instantiate $eid $node
exec vimage $node_id sysctl net.inet.ip.forwarding=1
}
-proc router.xorp.nghook { eid node ifc } {
+proc $MODULE.nghook { eid node ifc } {
return [l3node.nghook $eid $node $ifc]
}