1. 21 Apr, 2004 1 commit
  2. 20 Apr, 2004 2 commits
    • Mike Hibler's avatar
      Improve the client-install. You can now do a "make client-install" from · 361ee691
      Mike Hibler authored
      the top level.  This will build all the necessary binaries and then install
      them.  This works on FBSD4 and RHL7.3.  It still doesn't work on FBSD5
      (newer compiler that no longer supports a style of use of _FUNCTION_ in the
      event lib) or RHL9 (event lib needs SSL lib which has a bad dependency
      on Kerberos).  Notes:
      
      - requires that elvin libraries be installed on nodes (they are) to build
        event agents, requires linuxthreads be installed on FBSD (it is now) to
        build imagezip (which is installed, but is not strictly necessary)
      
      - installed event-agents and other binaries are stripped
      
      - added a few missing files to the source tree for bsd (healthd.conf)
        and linux (healthd.conf, rc.local)
      
      - the only thing that doesn't get rebuilt in /usr/local/etc/emulab is
        healthd, I couldn't quickly find how it gets built
      
      - uses a scaled down version of libtb with no DB functions (since mysql
        isn't installed on nodes).  N.B. DO NOT DO A CLIENT INSTALL FROM YOUR
        REGULAR OBJ TREE OR ELSE YOU MAY WIND UP WITH A NEUTERED VERSION OF
        libtb.a!
      
      The build-as-well-as-install semantics are counter to the regular install
      targets, but this is what we gotta do for now.  Once the TB source builds
      under Linux and newer BSDs, we could undo this and just require that people
      do a regular "make" followed by "make client-install"  OTOH, there should
      be no reason to require installation of mysql and other server-side packages
      just to build clients (or make them sit through the compilation of assign),
      so maybe we will keep the client build special.
      361ee691
    • David Anderson's avatar
      Small change to makefile to include nstb_compat when building client-install. · ca2ce5c5
      David Anderson authored
      Note: more changes are pending for the makefile related to moving to standard makefile style/suppressing errors.
      ca2ce5c5
  3. 05 Feb, 2004 1 commit
  4. 29 Jan, 2004 1 commit
    • Leigh B. Stoller's avatar
      Redo run_linktest.pl so that it is okay to run on boss/ops. Note that · b4480193
      Leigh B. Stoller authored
      I am not using paperbag to run it on ops, but just installing the two
      programs that are needed. Eventually should paperbag it.
      
      This same script runs on both boss/ops and on experimental nodes to
      fire off the linktest daemon on the nodes and wait. This is icky as
      some crufty stuff has to be done so that it will run in both
      environments. ltevent is of course not needed on boss, but do not want
      to bother it now since it *is* needed on the nodes.
      
      To run it on boss script needed severe cleanup and taint checking.
      Also added the use of event keyfile, which is currently optional, but
      needs to be mandatory once the images are updated.
      
      The current problem is that run_linktest can hang waiting for the
      clients to finish?. We can use quick mode in the experiment setup
      path, but maybe we need a cancel operation?
      b4480193
  5. 26 Jan, 2004 1 commit
  6. 17 Jan, 2004 1 commit
    • David Anderson's avatar
      Checkpoint commit. I've added the static-linked program "ltevent" to send · c6911250
      David Anderson authored
      and wait for linktest events, and integrated it into the perl scripts.
      
      At this point I'm working on small potatoes such as the rc.setup script
      to invoke linktest daemon and nailing down where to put platform-specific
      stuff such as the ns-linktest build and the customized tb-compat.
      
      Also am testing linktest in cases where I've deliberately inserted an error
      to make sure it catches it.
      c6911250
  7. 14 Jan, 2004 1 commit
    • David Anderson's avatar
      Updates to Linktest for a caller script, run_linktest.pl. · 5a1ab5a8
      David Anderson authored
      This includes an updated client-install.
      
      However, this is not yet ready for builds due to certain libraries not
      present on the nodes and ops. For those I will be writing a static
      linked c program to handle the linktest "done" event in both linktest.pl
      and run_linktest.pl.
      5a1ab5a8
  8. 16 Dec, 2003 1 commit
  9. 24 Nov, 2003 1 commit
  10. 05 Nov, 2003 1 commit
    • Leigh B. Stoller's avatar
      Middle part of the event system changes. The main part of this change · 54bc15c4
      Leigh B. Stoller authored
      is to add HMACs to events to ensure they that events cannot be
      injected into an experiment by an unauthorized client.
      
      * The frontend now generates a secret key for each experiment and
        stores that into a file and in the DB.
      
      * Each of the event clients, as well as the event producers
        (scheduler, tevc) have a new -k option to specify the name of the
        file. Two new event library functions were added for clients to give
        the key:
      
          event_handle_t
          event_register_withkeyfile(char *name, int threaded, char *keyfile);
      
          event_handle_t
          event_register_withkeydata(char *name, int threaded,
      	   		       unsigned char *keydata, int keylen);
      
      * When the library is in possesion of a key, it will generate an HMAC
        and attach it to outgoing notifications. A client receiving a
        notification will compute an HMAC and compare it against the HMAC in
        the notification. If they do not compare, the notification is
        dropped with a warning...
      54bc15c4
  11. 30 Sep, 2003 1 commit
  12. 10 Jun, 2003 1 commit
  13. 18 Dec, 2002 1 commit
  14. 10 Jul, 2002 1 commit
  15. 22 Mar, 2002 1 commit
    • Leigh B. Stoller's avatar
      New "program agent" that runs on the client nodes (freebsd and linux) · 187a3a18
      Leigh B. Stoller authored
      and reponds to PROGRAM events. Currently, just start and stop. Start
      takes a COMMAND= argument, and allows arbitrary command lines since I
      pass the whole thing off to the shell. Caveat; the agent runs as root
      and starts the program as root. You can has as many program objects in
      your NS file as you like, but each one can be started once; you have
      to either stop or wait for the old one to finish before trying to
      start again.
      187a3a18
  16. 07 Mar, 2002 1 commit
    • Leigh B. Stoller's avatar
      Isolate the pain of building threaded (and statically linked) event · 4dad8ebe
      Leigh B. Stoller authored
      system programs. Build two versions of the event library, one for non
      threaded programs and another (libevent_r.a) for threaded versions.
      Remove all that -pthread goo from all of the makefiles, except for the
      scheduler (which is threaded); it gets linked as before, but with
      -levent_r instead. If you try and use the threaded API without the
      proper link, the library will print an error message and quit.
      4dad8ebe
  17. 05 Mar, 2002 1 commit
  18. 24 Feb, 2002 1 commit
  19. 19 Feb, 2002 1 commit