1. 03 Jul, 2002 1 commit
  2. 17 Jun, 2002 1 commit
  3. 31 May, 2002 1 commit
  4. 22 May, 2002 1 commit
  5. 14 May, 2002 2 commits
  6. 25 Apr, 2002 1 commit
    • Leigh B. Stoller's avatar
      Fix contributed by Brian. The general idea is to allow global · 0f774f51
      Leigh B. Stoller authored
      variables to be renamed from within a subroutine:
      
      	proc create_testnet {} {
      		set s1 [$ns node]
       	}
      
      Chris' redefined set did not allow this. This is further complicated
      by the fact that its difficult to tell whats a global variable. You
      can declare a variable global, but until its set for the first time,
      the TCL info function will not tell you its a global. We do not want
      to rename locals of course, since that would make no sense to do.
      Anyway, Brian contributed the code to fix the new set function, and I
      looked at it and did my best to understand it (I kinda do), but no way
      I can be sure! I ran it through the test suite and spot checked the DB
      state. Seems to work okay.
      0f774f51
  7. 22 Apr, 2002 1 commit
  8. 26 Mar, 2002 1 commit
  9. 25 Mar, 2002 1 commit
  10. 22 Mar, 2002 1 commit
    • Leigh B. Stoller's avatar
      Add new NS program object. This syntax is different than I had · b9ba3398
      Leigh B. Stoller authored
      originally anticipated, but I was worried about confusion with the
      Agent/Application API that NS provides, and which is substantially
      different than this. Anyway, I added support for this syntax:
      
      	set prog0 [$ns program]
      	$prog0 set node $nodeA
      	$prog0 set command "/bin/ls -lt >& /users/stoller/logs/foo"
      
      Kinda obvious, although whats not obvious is that without events to
      start and stop them, these will never run. So, I added support for
      this:
      
      	$ns at 10 "$prog0 start"
      	$ns at 20 "$prog0 stop"
      
      You can start and stop programs as much as you like, but you cannot
      start a program that is already running; you have to stop it first.
      You can also issue these dynamically using the same api:
      
      	tevc -e testbed/Tevents now prog0 start \
      		"command=/bin/ls -lt / >& /users/stoller/logs/foo"
      	tevc -e testbed/Tevents now prog0 stop
      
      Note the quotes when using a multiword command. I also had intened to
      support a KILL command so that you could send arbitrary signals to a
      process. I added that, but I will not bother to document it yet; since
      I invoke /bin/csh to process the command line, the issue of signals is
      a little fuzzy. Sending a signal like -HUP to the parent process (the
      csh) is not really what we want to do. I think we can support this,
      but I need to poke around and see what the right way is.
      b9ba3398
  11. 16 Mar, 2002 1 commit
  12. 25 Feb, 2002 1 commit
  13. 08 Jan, 2002 1 commit
  14. 20 Dec, 2001 1 commit
  15. 27 Nov, 2001 1 commit
  16. 05 Sep, 2001 1 commit
  17. 23 Jul, 2001 1 commit
  18. 13 Jul, 2001 1 commit
  19. 27 Jun, 2001 1 commit
  20. 20 Jun, 2001 1 commit
  21. 11 Apr, 2001 2 commits
    • Christopher Alfeld's avatar
      Serious restructuring of parsing. · e9b8c412
      Christopher Alfeld authored
      This makes variable dereferencing work as expected.  So:
      
              for {set i 1} {$i <= 8} {incr i} {
                  set c($i) [$ns node]
                  tb-set-node-cmdline $c($i) "BATCH=1 DST_NAME=$c($i)"
              }
      
      will now expand $c($i) to correctly to c-$i.  Similarly:
      
      set node1 [$ns node]
      puts "First node is $node1"
      
      will output:
      
      First node is node1.
      
      Caveat: It assumes that every node and lan will be stored in a
      variable.  So doing something like:
      
      $ns duplex-link [$ns node] [$ns node] 100Mb 150ms DroPTail
      
      while in theory valid and sensible, won't work.
      
      A clean rewrite of the parsing stuff is probably something I should do
      soon.  It needs it to do all the variable munging correctly.
      e9b8c412
    • Christopher Alfeld's avatar
      33144107
  22. 06 Apr, 2001 1 commit
  23. 05 Apr, 2001 1 commit
  24. 14 Mar, 2001 1 commit
  25. 14 Feb, 2001 1 commit
    • Christopher Alfeld's avatar
      parse.tcl has a few minor fixes and copies in the tb_compat.tcl file now. · 8b418535
      Christopher Alfeld authored
      postparse now uses tbcmds
      sim.tcl is updated to close (and flush) the tbcmds output stream if it
      exists.
      tb_compat.tcl is the TB version that should be included by newstyle ns scripts.
      tb_compat_nop.tcl is the NS version that should be renamed to tb_compat.tcl
      and included by scripts when they are run under ns.  I.e. scripts
      	source tb_compat.tcl
      as the first line and then use either the TB or the NS (nop) version depending
      on what they are doing.
      8b418535
  26. 13 Feb, 2001 1 commit
  27. 03 Jan, 2001 1 commit
  28. 26 Dec, 2000 1 commit
  29. 01 Nov, 2000 1 commit
  30. 18 Oct, 2000 1 commit
  31. 16 Oct, 2000 1 commit
  32. 13 Oct, 2000 1 commit
  33. 09 Oct, 2000 2 commits
  34. 25 Aug, 2000 1 commit
  35. 30 Jun, 2000 1 commit
  36. 12 Jun, 2000 1 commit
  37. 26 May, 2000 1 commit