marko [Sun, 23 Oct 2005 23:26:11 +0000 (23:26 +0000)]
Introduce a popup-menu bound to the right mouse button, currently used to
spawn a shell, start ethereal etc. Creating a link to another node using
this menu is currently a no-op.
Deprecates the old binding model for spawining a shell and starting
ethereal to the right mouse button.
View / Show IP Addresses is now replaced with "IPv4 Addresses" and "IPv6 addresssees". Variable showIfIPaddrs refers to IPv4 addresses, and new variable showIfIPv6addrs refers to IPv6 addresses.
marko [Thu, 8 Sep 2005 13:02:44 +0000 (13:02 +0000)]
Implement a simple genetic algorithm for automatic rearpositioining of
nodes. The new function is activated from the "tools" menu, and remains
in effect until a cusor is clicked on blank space in the canvas, or
"execute" mode is engaged. It is possible to reposition either all nodes
or only the currently selected ones.
marko [Wed, 7 Sep 2005 15:36:39 +0000 (15:36 +0000)]
Correctly handle autogeneration of MAC addresses for up to 100000
interfaces. We had a bug where we would generate bogus MAC addresses
after 99-th interface would be instantiated.
marko [Sun, 14 Aug 2005 15:35:09 +0000 (15:35 +0000)]
Fix the MAC address autogenerator which was not resetting after repeated
instantiation of topologies, which could lead to overflows of the last
byte of the autogenerated MAC addresses.
marko [Wed, 10 Aug 2005 14:36:10 +0000 (14:36 +0000)]
Enable IPv6 forwarding for routers. This was unintentionaly disabled /
overlooked in the process of separating node-type specific code from
exec.tcl a few weeks ago.
marko [Wed, 27 Jul 2005 05:40:10 +0000 (05:40 +0000)]
A race condition could occur in vimageCleanup when processes inside a
dying vimage would be shutting down too slow. This would occur
particularly often with XORP. The vimage shutdown is now performed in
a loop to ensure we do not proceed further until the cleanup has
completely succedded.
marko [Wed, 20 Jul 2005 22:51:55 +0000 (22:51 +0000)]
Minor fix in config parser - previously we silently discarded all lines
in network- and custom- config sections not beginning with a <TAB>
character, now it is allowed for entries in those sections to start
right at column 0.
marko [Sat, 16 Jul 2005 04:55:00 +0000 (04:55 +0000)]
Move several IPv4 and IPv6 specific procedures into separated newly
created files ipv4.tcl and ipv6.tcl.
Move the MTU rolobox in interface config window from IPv4 address to toplevel.
Change the default IPv6 subnet from fefe:0:: to fec0:0:0:0:: which should
be more correct according to certain authors (site-local prefix space).
Add proc $MODULE.layer for each node type. Return value can be either
NETWORK or LINK and is to be used primarily by editor.tcl for choosing
which configurable parameter to show / offer on a per-node basis.
Add proc removeNode and removeLink which do not manipulate on any Tk
objects, thus can be invoked in plain tcl scripts. For removing Tk objects
(primarily in editor.tcl) removeGUINode and removeGUILink should be used.
Node names can now be arbitrary strings, including punctuation and
whitespaces.
marko [Wed, 13 Jul 2005 22:21:55 +0000 (22:21 +0000)]
Back out a bug I previously introduced by removing an "eval" in front
of exec in proc nexec.
XORP can now be selected as a router model even if xorp is not installed
locally. Usefull for a) editing a topology on one machine, executing it
on another and b) marketing XORP. The default router model remains quagga.
marko [Tue, 12 Jul 2005 08:16:13 +0000 (08:16 +0000)]
Change procedure definitions in type-specific modules from (example)
host.bootcmd to $MODULE.bootcmd -> makes copy & paste from one module
to another less labor intensive.
marko [Fri, 8 Jul 2005 13:13:45 +0000 (13:13 +0000)]
Improved IP address assignment in LANs / broadcast domains comprised of
multiple interconnected switches / hubs. The new code recursively
traverses all directly connected link-layer nodes in a search for an
appropriate subnet and host address.
Bug found by: nikola
Submitted by:
Requested by:
Reviewed by:
Approved by:
Obtained from: