- 28 Jul, 2008 1 commit
-
-
Kevin Atkinson authored
-
- 25 May, 2007 1 commit
-
-
Mike Hibler authored
things for which we previously linked -static. Fixup some clean targets in a couple of cases as well. Get capture to compile without SSL (capture-nossl). This is untested.
-
- 08 May, 2007 1 commit
-
-
Mike Hibler authored
This will probably shortly become the default.
-
- 25 Apr, 2007 1 commit
-
-
Leigh B. Stoller authored
utilities (tevc, linktest, libraries).
-
- 24 Apr, 2007 1 commit
-
-
Mike Hibler authored
event clients) need slightly different args.
-
- 23 Apr, 2007 2 commits
-
-
Leigh B. Stoller authored
will give me a little breathing space (stage things in slower) by starting just with boss.
-
Leigh B. Stoller authored
-
- 22 Feb, 2007 1 commit
-
-
Leigh B. Stoller authored
-
- 25 Oct, 2006 1 commit
-
-
Leigh B. Stoller authored
between when something is installed and when post-install runs. Short of a global lock (which we probably need anyway someday), my solution is this. In your makefiles, add these variables before the line that has the include of $(TESTBED_SRCDIR)/GNUmakerules: SETUID_BIN_SCRIPTS = SETUID_SBIN_SCRIPTS = I have added three new rules to GNUmakerules that look like this: $(addprefix $(SBINDIR)/, $(SETUID_SBIN_SCRIPTS)): $(SBINDIR)/%: % echo "Installing (setuid) $<" -mkdir -p $(INSTALL_SBINDIR) $(SUDO) $(INSTALL) -o root -m 4755 $< $@ Yep, your eyes ain't lying to you; use sudo to run the target so that install does the right thing (which is that the old file is not replaced until the new one has the proper attributes on it). Note that post-install is still needed for the initial install, but should no longer be needed for day to day installs since all that other stuff post-install does is mkdir/chmod on directories.
-
- 25 May, 2006 1 commit
-
-
Mike Hibler authored
See event/linktest/CHANGES for details.
-
- 01 Mar, 2006 1 commit
-
-
Leigh B. Stoller authored
fetched yet.
-
- 16 Nov, 2005 1 commit
-
-
Russ Fish authored
Factor the Cygwin password authentication hack out of program-agent into libtb, and use it in linktest as well.
-
- 10 Nov, 2005 1 commit
-
-
Russ Fish authored
-
- 26 Oct, 2005 1 commit
-
-
Mike Hibler authored
issues. This setup worked for me on FBSD 4&5, RHL9 and FC4.
-
- 24 Oct, 2005 1 commit
-
-
Leigh B. Stoller authored
emulab version of iperf. Linux makefile stuff not working yet.
-
- 19 Aug, 2005 1 commit
-
-
Timothy Stack authored
Bring linktest in line with the new event system world order and do some generic cleanup. I'm pretty sure I broke backwards compatibility with old disk images though... * configure, configure.in: Remove linktest.h.in from the list of template files. * event/linktest/GNUmakefile.in: Don't make subdirectories for executables since it can mess up the dependencies. Don't install tb_compat.tcl stuff anymore. Check for '/usr/local/bin/pathrate' and friends, and print out a warning if they are not found. Make a version file for the linktest daemon. * event/linktest/linktest.c: Only subscribe to the events we care about 'STOP/KILL'. Subscribe to TIME START events and kill any linktests that are in progress. Send events through the local elvind instead of running tevc. * event/linktest/linktest.pl.in: Don't run the modified NS anymore to generate the topology file, use gentopofile to do that. Send COMPLETE events to indicate that the tests were finished instead of STOP so it works with event-sequences. Use emulab-sync to report errors between linktest daemons. In addition to sending REPORT events, send LOG events to the SIMULATOR agent so the messages end up in the report e-mail. Fix wait_all so it collects child processes immediately and doesn't leave zombies lying around. Make the static route test work with topologies that aren't fully connected. Change ownership of the linktest error files from root to the swapper. Bump latency tolerance up to 2.5ms. * event/linktest/ltevent.c: Use event_schedule instead of event_notify so the events go through the scheduler. * event/linktest/run_linktest.pl.in: Wait for COMPLETE events insetad of STOPs. * event/linktest/linktest.h.in: Removed. * event/sched/error-record.c: Include linktest error output in the report e-mail. * event/sched/event-sched.c: Linktest now sends COMPLETE events for START events. * tbsetup/gentopofile.in, tmcd/common/config/rc.topomap: Piggy back the generation and management of the linktest config file onto the generation of the topomap. * tbsetup/ns2ir/sim.tcl.in: Add "linktest" event to the Simulator object that runs linktest at level 3 (latency, static routing, and loss). * tmcd/common/libsetup.pm: Add TMLTMAP constant that contains the path to the node local linktest config file. * tmcd/common/rc.linktest: Pass '-u' option to the linktest daemon so it knows what user should to change ownership of files to. * tmcd/freebsd/jail/mkjail.pl: Copy the linktest config file (ltmap) into the jail.
-
- 11 Apr, 2005 1 commit
-
-
Leigh B. Stoller authored
created before trying to install.
-
- 01 Mar, 2005 1 commit
-
-
Timothy Stack authored
-
- 03 Feb, 2005 1 commit
-
-
Mike Hibler authored
plain "make". There seemed to be a number of missing dependencies that prevented this from working (how did this ever work?)
-
- 14 Jan, 2005 1 commit
-
-
Timothy Stack authored
Cross compilation fixes for the stargates, 'gmake client' should now build, link, and install properly. Haven't really tried to run stuff though. * GNUmakerules: Add target for stripping executables, used instead of "install -s" since that doesn't work for cross-compiling. * Makeconf.in: Add ELVIN_CONFIG variable that refers to 'elvin-config'. * configure, configure.in: Detect and save the elvin-config path since we need a different one for cross-compiling. * event/lib/GNUmakefile.in, event/link-agent/GNUmakefile.in, event/linktest/GNUmakefile.in, event/program-agent/GNUmakefile.in, event/proxy/GNUmakefile.in, event/tbgen/GNUmakefile.in, event/trafgen/GNUmakefile.in, os/dijkstra/GNUmakefile.in, os/syncd/GNUmakefile.in, sensors/slothd/GNUmakefile.in, tmcd/GNUmakefile.in, tmcd/linux/GNUmakefile.in: Cross compilation fixes, don't statically link on arm, create "foo-debug" executables with debugging info and install separately stripped ones instead of passing "-s" to install.
-
- 03 Jan, 2005 1 commit
-
-
Russ Fish authored
-
- 24 Sep, 2004 1 commit
-
-
Leigh B. Stoller authored
during ops-install.
-
- 10 Sep, 2004 1 commit
-
-
Leigh B. Stoller authored
ops as the user, but that breaks for admin people who have real shells on boss and no unencrypted key in the .ssh dir. So, switched it to a root ssh, and a simple proxy on the other side that flips to the user and invokes the run_linktest stuff.
-
- 09 Sep, 2004 1 commit
-
-
Leigh B. Stoller authored
directly to ops via opsdir. * Force tty allocation in the control script. Also force protocol 1 and ignore the users .ssh/config file. * Do not start up linktest on delay nodes!
-
- 30 Aug, 2004 1 commit
-
-
Leigh B. Stoller authored
* The per-experiment event scheduler now runs on ops instead of boss. Boss still runs elvind and uses events internally, but the user part of the event system has moved. * Part of the guts of eventsys_control moved to new script, eventsys.proxy, which runs on ops and fires off the event scheduler. The only tricky part of this is that the scheduler runs as the user, but killing it has to be done as root since a different person might swap out the experiment. So, the proxy is a perl wrapper invoked from a root ssh from boss, which forks, writes the pid file into /var/run/emulab/evsched/$pid_$eid.pid, then flips to the user and execs the event scheduler (which is careful not to fork). Obviously, if the kill is done as root, the pid file has to be stored someplace the user is not allowed to write. * The event scheduler has been rewritten to use Tim's C++ interface to the sshxmlrpc server on boss. Actually, I reorg'ed the scheduler so that it can be built either as a mysql client, or as RPC client. Note that it can also be built to use the SSL version of the XMLRPC server, but that will not go live until I finish the server stuff up. Also some goo for dealing with building the scheduler with C++. * Changes to several makefiles to install the ops binaries over NFS to /usr/testbed/opsdir. Makes life easier, but only if boss and ops are running the same OS. For now, using static linking on the event scheduler until ops upgraded to same rev as boss. * All of the event clients got little tweaks for dealing with the new CNAME for the event system server (event-sever). Will need to build new images at some point. Old images and clients will continue to work cause of an inetd hack on boss that uses netcat to transparently redirect elvind connections to ops. * Note that eventdebug needs some explaining. In order to make the inetd redirect work, elvind cannot be listening on the standard port. So, the boss event system uses an alternate port since there are just a few subsystems on boss that use the server, and its easy to propogate changes on boss. Anyway, the default for eventdebug is to connect to the standard port on localhost, which means it will work as expected on ops, but will require -b argument on boss. * Linktest changes were slightly more involved. No longer run linktest on boss when called from the experiment swapin path, but ssh over to ops to fire it off. This is done as the user of course, and there are some tricks to make it possible to kill a running linktest and its ssh when experiment swapin is canceled (or from the command line) by forcing allocation of a tty. I will probably revisit this at some point, but I did not want to spend a bunch of time on linktest. * The upgrade path detailed in doc/UPDATING is necessarily complicated and bound to cause consternation at remote sites doing an upgrade.
-
- 29 Jun, 2004 1 commit
-
-
Leigh B. Stoller authored
* The linktest daemon (the one that runs on the nodes) no longer talks to boss directly, but instead contacts the local elvind; rc.linktest is changed to reflect that. * A bunch of signal handler changes to run_linktest.pl; do not rely on events to stop linktest when it is running on boss; when the user kills a running linktest make sure all the processes are killed explicitly. * New wrapper script (linktest_control) for use on boss, specifically when being called from the web interface. This script handles the DB part (getting linktest_level and linktest_pid), making sure that only one linktest is running at a time (on boss) and reseting the pid in the DB as needed. The -k option kills a running linktest, and is invoked from the web interface when the user wants to kill one in progress. This gets the pid from the DB and sends it a TERM signal, which sends a TERM to the run_linktest.pl script, which sends a TERM to the ltevent helper app. Note that this wrapper is also suitable for the XMLRPC interface, although I have not added it there yet.
-
- 28 Jun, 2004 1 commit
-
-
Leigh B. Stoller authored
* Do not have linktest daemon connect to boss; have it connect to local node elvind like all other local agents. Remove the event generation code (linktest was sending a KILL event to all other linktest programs), and replace with a system() call to tevc, which sends the event through the scheduler and exits; this will avoid a zillion tcp connctions to boss from the linktest daemon. * A couple of process group changes to linktest daemon; the daemon appeared to be killing itself off. * Fix to run_linktest.pl; It was just hanging after it completed, cause its child ltevent process was still running. Changed to record child pid, and kill/close ltevent child before exiting.
-
- 24 Jun, 2004 1 commit
-
-
Mike Hibler authored
possible to: gmake client sudo gmake client-install on a FBSD4, FBSD5, RHL7.3, and RHL9.0 client node. There are still some dependencies that are not explicit and which would prevent a build/install from working on a "clean" OS. Two that I know of are: you must install our version of the elvin libraries and you must install boost.
-
- 11 May, 2004 1 commit
-
-
Leigh B. Stoller authored
-
- 29 Apr, 2004 2 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
- 28 Apr, 2004 1 commit
-
-
Leigh B. Stoller authored
-
- 26 Apr, 2004 1 commit
-
-
Mike Hibler authored
1. "make clean" will just remove stuff built in the process of a regular build 2. "make distclean" will also clean out configure generated files. This is how it was always supposed to be, there was just some bitrot.
-
- 21 Apr, 2004 1 commit
-
-
Mike Hibler authored
Now it installs from your source tree (rather than from /usr/testbed/lib, which might not exist) into /usr/local/etc/emulab
-
- 20 Apr, 2004 2 commits
-
-
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.
-
David Anderson authored
Note: more changes are pending for the makefile related to moving to standard makefile style/suppressing errors.
-
- 05 Feb, 2004 1 commit
-
-
Leigh B. Stoller authored
makefile needs to be fixed (remove fbsd/linux subdir cruft).
-
- 29 Jan, 2004 1 commit
-
-
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?
-
- 26 Jan, 2004 1 commit
-
-
David Anderson authored
Removed hardcoded "boss" from linktest.pl and run_linktest.pl Changed historical log location.
-
- 17 Jan, 2004 1 commit
-
-
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.
-