1. 02 May, 2013 1 commit
  2. 01 May, 2013 1 commit
  3. 30 Apr, 2013 3 commits
    • Kirk Webb's avatar
      Add complete local node storage support from parser down to tcmd. · dab52801
      Kirk Webb authored
      Doing this required adding columns to the virt and physical blockstores
      tables to mark the attributes that will be considered for mapping.
      Unmarked entries just flow through to the client-side.
      
      This commit also introduces filesystem support in the form of passing
      through a mount point to the client-side.  It is left to the client to
      decide what filesystem and fs options to use to setup the space, including
      any logical volume aggregation required to support the request.
      dab52801
    • Mike Hibler's avatar
      Avoid redundent output in hwinfo command. · d468c60f
      Mike Hibler authored
      d468c60f
    • Mike Hibler's avatar
      Implement the "hwinfo" call. · 636e6436
      Mike Hibler authored
      This call returns info about the HW on the node (duh!) for the benefit
      of the upcoming "nodetest". It returns whatever info about the CPU, memory,
      disks and network interfaces is in the DB. The info comes from a variety of
      places:
        node_attributes, node_type_attributes, blockstores, blockstore_attributes,
        blockstore_type_attributes, and interfaces
      at last count.
      
      We will need to add some new node_type_attributes for cpu/memory.
      Even though some of the info exists already (e.g., "memory", "frequency"),
      I chose to use uniformly prefixed attributes (hw_cpu_*, hw_mem_*) to
      make my tmcd-life easier.
      636e6436
  4. 09 Apr, 2013 1 commit
  5. 29 Mar, 2013 1 commit
  6. 22 Mar, 2013 1 commit
  7. 04 Mar, 2013 1 commit
  8. 28 Feb, 2013 2 commits
    • Mike Hibler's avatar
      More jailconfig fixes. · d274ae74
      Mike Hibler authored
      Move client_writeback inside conditional where it belongs (else we double
      output the first part), make sure jailip is always initialized.
      d274ae74
    • Mike Hibler's avatar
      Doh! For jailconfig we could deref a null pointer. · f3533fca
      Mike Hibler authored
      Apparently we don't always set interfaces.mask in the DB for the cnet
      interface. So the mysql query returns NULL, which we would happily strcpy!
      Now we use CONTROL_NETMASK if the queried value is null.
      f3533fca
  9. 27 Feb, 2013 4 commits
  10. 26 Feb, 2013 1 commit
  11. 28 Jan, 2013 1 commit
  12. 14 Nov, 2012 1 commit
    • Mike Hibler's avatar
      Client half of the fetch-tarballs-via-the-web change. · 763c6aca
      Mike Hibler authored
      For every tarball and rpm, tmcd will now pass a SERVER= string as well
      telling the client where the file should be downloaded from (if using
      the web rather than NFS). Right now this value is the same for all
      tarballs and rpms, and is hardwired in tmcd as either "www" (if
      SPEWFROMOPS=0) or "users" (if 1). Note: BUMPED THE TMCC VERSION NUMBER
      for this.
      
      Made a common routine for doing an error-check-and-retry copy of a file
      across "racy" NFS. This is used by install-{tarfile,rpm} and rc.topomap.
      763c6aca
  13. 30 Oct, 2012 1 commit
    • Mike Hibler's avatar
      Tweaks to the arpinfo code. · a9e85d64
      Mike Hibler authored
      Most sites don't have boss/ops/fs in the DB, so we use sitevariables to
      get their IP/MAC instead. Also now pass the type of "arp lockdown" we are
      doing (none, static, staticonly).
      a9e85d64
  14. 25 Sep, 2012 1 commit
  15. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      
      This commit is intended to clear up that confusion.
      
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  16. 19 Sep, 2012 1 commit
    • Mike Hibler's avatar
      Fix a check in imageinfo. · 59d4edd2
      Mike Hibler authored
      I am not 100% sure this is correct, but if not correct, it is at least
      no more wrong than the old code!
      59d4edd2
  17. 12 Sep, 2012 2 commits
    • Mike Hibler's avatar
      Plumb the arpinfo command through the perl code. · bda3fcfc
      Mike Hibler authored
      Also, fix a minor bug in the tmcd implementation.
      bda3fcfc
    • Mike Hibler's avatar
      Add SSL-only "arpinfo" command to return MAC/IP for servers and "peer" nodes. · fb1f8f9a
      Mike Hibler authored
      Details:
      
      Return MAC/IP (ARP) information for a node's "peers" on the node control
      net. We also return info for the control net gateway (if there is one)
      and any servers on the node control network (e.g., subbosses).
      
      As far as "peer" info, right now we just support calls by subbosses that
      will return the info for the set of nodes they control. This could also
      be used by experiment firewalls or gateways to return info for the nodes
      they are protecting and setup filters accordingly.
      
      Note that this call only returns info if invoked using SSL. This allows
      the client to be sure it is getting the info from boss.
      
      Tangentially related, is the addition of an index to the subbosses table
      to speed up a really slow query.
      fb1f8f9a
  18. 21 Aug, 2012 3 commits
  19. 03 Aug, 2012 1 commit
  20. 25 Jul, 2012 1 commit
  21. 24 Jul, 2012 1 commit
    • Mike Hibler's avatar
      Add a 'disabled' field to the subbosses table. · e08bfeec
      Mike Hibler authored
      This allows us to more easily disable a subboss in the event of a temporary
      subboss outage (e.g., hardware failure). Previously we would have to remove
      the related rows from the DB and restore them later.
      e08bfeec
  22. 16 Jul, 2012 1 commit
  23. 05 Jul, 2012 1 commit
    • Mike Hibler's avatar
      Tmp hack to allow use of a 10Gb shared LAN. · ad2aac63
      Mike Hibler authored and Kirk Webb's avatar Kirk Webb committed
      Til we have snmpit working on the Arista, we statically configure a single
      10Gb LAN and put one interface from each of the d820s into it.
      
      This is controlled by setting the node_attribute.shared_lan_* attributes
      for each node (ip,mask,mac,speed).
      ad2aac63
  24. 03 Jul, 2012 1 commit
    • Mike Hibler's avatar
      Tmp hack to allow use of a 10Gb shared LAN. · bcaeb971
      Mike Hibler authored
      Til we have snmpit working on the Arista, we statically configure a single
      10Gb LAN and put one interface from each of the d820s into it.
      
      This is controlled by setting the node_attribute.shared_lan_* attributes
      for each node (ip,mask,mac,speed).
      bcaeb971
  25. 06 Jun, 2012 1 commit
  26. 31 May, 2012 1 commit
  27. 21 May, 2012 1 commit
  28. 17 May, 2012 1 commit
    • Leigh B Stoller's avatar
      Return VGAONLY in the loadinfo clause, if set in the node_type_attributes · 2487c9db
      Leigh B Stoller authored
      or the node_attributes table.
      
      Note that I had to fix the query; the original select required that
      the key be in the node_type_attributes table, else it would fail to
      find it in the node_attributes table. In other words, I could not put
      vgaonly on a specific node unless there was a definition in the
      node_type_attributes table.
      
      I've changed the query to use a "union" of two selects; this query is
      intended to select certain attributes from node_type_attributes table,
      but allow them to be overridden by entries in the node_attributes
      table for the node making the request. The "union" of two selects,
      allow results from the second select on node_attributes to overwrite
      anything returned for the same key in the first select on
      node_type_attributes.
      2487c9db
  29. 24 Apr, 2012 2 commits
  30. 29 Mar, 2012 1 commit
    • Mike Hibler's avatar
      Fix nonce calculation. · c1ff2263
      Mike Hibler authored
      Well, isn't that special. We had the arguments to memcpy backward (probably
      dating from the time when we use bcopy instead). So instead of copying bytes
      of goodness into the zeroed nonce buffer, we were copying bytes out.
      Net result: a nonce of zeros.
      c1ff2263