1. 13 Jun, 2002 1 commit
  2. 06 May, 2002 1 commit
  3. 24 Apr, 2002 1 commit
  4. 04 Apr, 2002 1 commit
    • Leigh B. Stoller's avatar
      First round of ssl'ification of tmcd/tmcc. This needs to be looked at · ffe40d2e
      Leigh B. Stoller authored
      by smarter brains by me (I have asked Dave to look it over). Anyway ...
      
      I added a top level ssl directory which has a bunch of goo for
      creating certificates and keys.  I currently create a Certificate
      Authority, a server certificate, and a client certificate. The private
      keys for all three are unencrypted, so no password is required. All
      key/cert combos can be installed on boss. The client side needs the
      key/cert pair (in one file), and the CA cert (no key!). There are
      install targets to do this. NOTE, you do not want to create/install
      these without being careful, since you could instantly invalidate all
      the clients!
      
      I have added the necessary SSL routines to tmcd/tmcc. See the ssl.c
      and ssl.h file. I have set it up so that with all you need to do is
      uncomment three lines in the makefile, and accept,connect,read,write,
      and close are redirected to SSL'ified versions in ssl.c. The current
      security model is that the client and server both "demand" certificate
      verification from the other side (as opposed to just server side
      verification). tmcd reads in server.pem, while tmcc reads in
      client.pem. Both read in the emulab.pem (CA cert with no private
      key).
      
      Initial testing indicates I have done this at least partially
      correctly. Whoever invented this stuff has a really twisted mind
      though. There are some questions at the top of ssl.c that need to be
      answered.
      
      Oh, also redid all the syslog stuff throughout tmcd.
      ffe40d2e
  5. 01 Apr, 2002 1 commit
  6. 29 Mar, 2002 1 commit
  7. 28 Mar, 2002 2 commits
    • Leigh B. Stoller's avatar
      Minor fix to previous revision. · a82d73a7
      Leigh B. Stoller authored
      a82d73a7
    • Leigh B. Stoller's avatar
      Add versioning support. This has been a minor problem, and is going to · 2d522296
      Leigh B. Stoller authored
      be a worse problem with remote nodes, where we will not be able to
      keep everyone up to date like we can in the local testbed case. I ran
      into this yesterday with the key distribution stuff for RON nodes,
      which require incompatable changes to the accounts info that is
      returned. So, tmcc now takes a [-v version] argument, which is passed
      through to tmcd in the request field. tmcd passes that version number
      (assumed to be an int) down, and the routines should look at that. We
      will need to make some structural changes in tmcd as we get more
      version skew, but for now this is fine. Anyway, tmcd/tmcc have a
      compiled in DEFAULT_VERSION (see decls.h). If no version is supplied,
      assume DEFAULT_VERSION (2), which covers all of the old images and yet
      to be updated current images. As the new tmcc makes it out, versions
      will be sent through. VERY IMPORTANT: The current version is placed in
      libsetup.pm. When you make incompatible changes, bump the version
      number is decls.h and libsetup.pm, recompile and install a new tmcc
      and the new libsetup.pm on the clients (and of course, tmcd on the
      server).
      
      Fixes to termination; Add signal handlers for HUP,INT,TERM, and make
      sure all the children get killed off before exiting. We still have
      some problems though; I think the children should wait until the
      current request is completed before exiting. I'll give that some more
      thought though since it easy to mess that stuff up (leave zombies).
      
      Add build_info[] to startup message to syslog. Good for debugging.
      Some minor cleanup and restructuring. Mike is gonna hate it.
      2d522296
  8. 27 Mar, 2002 1 commit
  9. 18 Jan, 2002 1 commit
  10. 16 Jan, 2002 1 commit
  11. 10 Jan, 2002 1 commit
  12. 30 Nov, 2001 1 commit
  13. 12 Jul, 2001 2 commits
  14. 30 Mar, 2001 1 commit
    • Mike Hibler's avatar
      Big Ass Hack(tm): · 05456fd2
      Mike Hibler authored
      Add a "log" message which allows a client to send some text to TMCD which
      in turns appends it to a project/experiment specific log file.  Adds all new
      DoS routes to TMCD, and should perhaps be split off into its own daemon,
      but for now it gives a way for console-less sharks to report what they did.
      05456fd2
  15. 21 Mar, 2001 1 commit
  16. 19 Mar, 2001 1 commit
    • Mike Hibler's avatar
      Support for UDP: · 7a3101fd
      Mike Hibler authored
              tmcd listens on port 7777 for both UDP and TCP.
              UDP replies are buffered and sent as a single (up to 8k) packet.
      
              tmcc can be compiled to make UDP queries as well as TCP
              Not defined by default, used for debugging
      
      Cleaned up some lint.
      7a3101fd
  17. 07 Mar, 2001 1 commit
  18. 02 Feb, 2001 1 commit
  19. 20 Dec, 2000 1 commit