1. 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
  2. 01 Aug, 2012 1 commit
    • Mike Hibler's avatar
      Support 64-bit FreeBSD on the server side. · 9036d314
      Mike Hibler authored
      NOTE: currently only for FreeBSD 7.3 installs because that is the only
      set of boss/ops/fs packages I have built so far!
      
      This mostly involved minor changes to event agents. Too often we were
      passing a pointer to a "long" to *get_int32, which on a 64-bit x86 OS would
      fill the wrong half of a 64-bit variable. There was also one instance of
      TCL code that had to be tweaked to account for 32- vs 64-bit.
      
      These changes also required regeneration of SWIG stubs and an ugly change
      to the SWIG generated code to use va_copy rather than direct assignment in
      a couple of places.
      
      Also related to SWIG is ensuring that the components that go into the
      perl/python stub .so files are built with PIC. The amd64 linker requires
      this.
      
      The meta-ports had to be changed to reflect that linuxthreads and
      ulsshxmlrpcpp don't work on amd64. The former had little effect as we
      had mostly eliminated uses of linuxthreads already. The one thing that
      did change was that we do not build nfstrace on amd64 (and we don't
      currently use this anyway). Removing ulsshxmlrpcpp required switching
      to the new event scheduler (event/new_sched) that Ryan did awhile back.
      Note that it is only "new" in the sense that it uses a standard XMLRPC
      package, there should be no functional differences. However, to be safe
      we only use new_sched as the standard scheduler on 64-bit server installs.
      
      Finally, added support to elabinelab setup to do a 64-bit server install.
      Just specify FBSD73-64-STD as the boss/ops/fs osid and rc.mkelab should
      do the rest.
      
      That is pretty much it other than some random nits here and there.
      9036d314
  3. 01 Jun, 2012 2 commits
    • Robert Ricci's avatar
      Remove a comment that's no longer true · edf8442c
      Robert Ricci authored
      edf8442c
    • Robert Ricci's avatar
      Fix summary for merge commits · 8e634629
      Robert Ricci authored
      Problem before was that I was using 'git log' of the commit and
      its parent, which doesn't work as I intended when there's more than
      one parent. Instead, use 'git show -s', which is helpfully not
      documented in the manpage for git-show, but instead the manpage for
      git-shortlog
      8e634629
  4. 08 May, 2012 1 commit
  5. 03 May, 2012 1 commit
  6. 01 May, 2012 1 commit
  7. 30 Apr, 2012 1 commit
    • Mike Hibler's avatar
      First cut at FreeBSD 9.0 support. · 1f83c9c6
      Mike Hibler authored
      Upgrade to perl 5.12 means no more "suidperl" (setuid perl scripts).
      So we now have yet another little wrapper (security/runsuid.c) which
      runs suid and whose sole function is to exec the perl script of the
      same name in the /usr/testbed/suidbin directory. So a formerly setuid
      perl script install now goes like:
        create /usr/testbed/sbin/mkproj as a symlink to /usr/testbed/libexec/runsuid
        install real mkproj perl script in /usr/testbed/suidbin/mkproj
      When the setuid-wrapper is invoked under the name "mkproj" it execs
      /usr/testbed/suidbin/mkproj. We could almost use sudo for this purpose
      instead (see security/sudoers.in) but sudo loses one of the groups in
      the group list.
      
      /usr/include/utmp.h is gone in FreeBSD 9.0. In most places we nevered
      needed it, but in the one case that did (tg source), it just used a
      couple of the constants exposed (UT_*) and not the struct, so I just
      hardwired values for the constants.
      
      The usual tweakage to the install stuff to reflect yet another set of
      packages!
      1f83c9c6
  8. 27 Apr, 2012 1 commit
  9. 17 Apr, 2012 8 commits
    • Robert Ricci's avatar
      Bugfix: make sure to initialize the summary · 3c832453
      Robert Ricci authored
      3c832453
    • Robert Ricci's avatar
      Support options with '=' in them · b31df8b4
      Robert Ricci authored
      b31df8b4
    • Robert Ricci's avatar
      Fix for older versions of git · 1c0f4a5f
      Robert Ricci authored
      'git revparse --show-toplevel' is a nice way to get a path to the repo
      no matter where you are in it, but unfortunately, older versions don't
      have it. So, go back to `pwd`
      1c0f4a5f
    • Robert Ricci's avatar
      Support patches down at the bottom of gitmail · 78669f67
      Robert Ricci authored
      New 'includepatches' option puts a seperate set of patches after all
      commit messages. 'patchstyle' allows you to set 'word' to get word
      diffs. 'patchsizelimit' (default 1,000) omits patches with more than
      this many lines. 'maxpatches' (default 20) skips patch generation if
      there are more than this many commits in the message.
      78669f67
    • Robert Ricci's avatar
      Bug fix: fix prototype for commit_mail() · 720403f4
      Robert Ricci authored
      720403f4
    • Robert Ricci's avatar
      Add host and path headers to gitmail · 05a4a77b
      Robert Ricci authored
      For now, these go into headers (X-Git-Repo-Host and X-Git-Repo-Path)
      Might consider moving them to the body of the mail at some point.
      
      Note that I *don't* attempt to figure out the actual 'URL' for the
      repo, since that is *not* necessarily automatically derivable: eg.
      it might be any of ssh,git, or http protocols, and the path (esp.
      for git: and http:) might not match the path in the filesystem. So
      this suggests that wat goes into the body of the mail ought to be
      set with a config variable.
      05a4a77b
    • Robert Ricci's avatar
      Show commit range on updates · b6dc5a0e
      Robert Ricci authored
      Show the old and new values of the ref, in a form that is suitable for
      passing to 'git log', etc. The idea is to make it easier for the reader
      of the mail to go look at more detailed information than is in the mail,
      if they so choose.
      
      Use short form of the hashes to make it fit nicely into one line
      of text.
      b6dc5a0e
    • Robert Ricci's avatar
      3b96945a
  10. 16 Apr, 2012 3 commits
  11. 15 Apr, 2012 3 commits
  12. 02 Apr, 2012 1 commit
  13. 16 Mar, 2012 2 commits
  14. 15 Mar, 2012 2 commits
  15. 12 Jan, 2012 4 commits
  16. 03 Jan, 2012 1 commit
    • Ryan Jackson's avatar
      Add hgmail script · 89982747
      Ryan Jackson authored
      hgmail is like our gitmail script, only for Mercurial instead of git.
      
      Filtering emails based on the branch doesn't work correctly, so it has
      been disabled for now.  Filtering based on path should still work
      though.
      89982747
  17. 15 Dec, 2011 2 commits
  18. 17 Nov, 2011 3 commits
    • Robert Ricci's avatar
      Fixes to git-checkout-push · ae6fd130
      Robert Ricci authored
      Explicitly set an environment variable for the working directory, otherwise
      git looks in the .git directory and bad things happen
      
      Add an UNSAFE option, off by default
      ae6fd130
    • Robert Ricci's avatar
      Change path handling in git-multihook · d2d6cfcd
      Robert Ricci authored
      If the path is not explictly fully-qualified or relative, prepend
      the path this script itself is at (usually hooks/)
      d2d6cfcd
    • Robert Ricci's avatar
      Fixes to git-checkout-push · 5da66347
      Robert Ricci authored
      Add a note about a variable you have to set on the target repo to
      make git happy
      
      Don't check the index, weird stuff happens
      
      Use 'git reset' rather than 'git checkout', as the latter is known to
      do strange things in this situation
      5da66347
  19. 16 Nov, 2011 2 commits
    • Robert Ricci's avatar
      New git utility script: git-multihook · f0d18eb0
      Robert Ricci authored
      Allows you to call more than one hook - eg. to use git-checkout-push
      and gitmail both from post-receive
      f0d18eb0
    • Robert Ricci's avatar
      New git utility script: git-checkout-push · 09eecec3
      Robert Ricci authored
      Simple script that, if master is updated, does a checkout of the new
      version of master. Intended for things like papers, where you want the
      central repository to have a checked-out copy that reflects the latest
      push.
      09eecec3