- 13 Feb, 2007 5 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
- 12 Feb, 2007 25 commits
-
-
Russ Fish authored
-
Robert Ricci authored
filesize by about three.
-
Robert Ricci authored
-
Leigh B. Stoller authored
-
Robert Ricci authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Robert Ricci authored
-
Robert Ricci authored
when they have changed. So, change the URL for our stylesheet in order to force browsers to load a new version. (I installed this manually on boss.) This should be removed before making a release!
-
Robert Ricci authored
enumerates the different experimental environments we support. Most of the new text only gets displayed at Utah, since no one else has wireless nodes, etc. Other sites get some short generic text. New banner, plus other visual tweaks. The new banner is turned on via the new @FANCYBANNER@ autoconf variable. This is turned on for TBMAINSITE, but defaults to off for other sites. This is so that existing sites which already have their own versions of the old banner don't have to update them right away. Made the usage iframe a little less prominent, by darkening it, and making it ever so slightly transparent on browsers that support it. Some minor visual tweaks to the background and content area. Added specific IDs for the main menu subgroups so that if we want, we can style them differently. Man, IE is a pain in the ass.
-
Robert Ricci authored
enumerates the different experimental environments we support. Most of the new text only gets displayed at Utah, since no one else has wireless nodes, etc. Other sites get some short generic text.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Mike Hibler authored
"collaboration tools" for testing.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
link.
-
Leigh B. Stoller authored
-
Jonathon Duerig authored
Robustified and cleaned up monitor.py. Pruned dead code. Consistentified error reporting. Added a fake-running option and a script to use it so that it can be tested on libnetmon logs without sending events etc. rather than being run in real time.
-
Leigh B. Stoller authored
register_globals=1 to turn POST/GET/COOKIES arguments in local variables. This is known to be a terrible security risk, and we keep saying we are going to fix it, and now I am. In order to accomplish this on a transitional basis (since I don't want the entire web interface to stop working while I debug it), and because the code just needs the cleanup, I am doing it like this: Each page will sport new declarations at the top: RequiredPageArguments("experiment", PAGEARG_EXPERIMENT, "template", PAGEARG_TEMPLATE, "instance", PAGEARG_INSTANCE, "metadata", PAGEARG_METADATA, "osinfo", PAGEARG_OSINFO, "image", PAGEARG_IMAGE, "project", PAGEARG_PROJECT, "group", PAGEARG_GROUP, "user", PAGEARG_USER, "node", PAGEARG_NODE, "yesno", PAGEARG_BOOLEAN, "message", PAGEARG_STRING, "age", PAGEARG_INTEGER, "cost", PAGEARG_NUMERIC, "formfields", PAGEARG_ARRAY, "unknown", PAGEARG_ANYTHING); OptionalPageArguments("canceled", PAGEARG_BOOLEAN); The first token in each pair is the name of the global variable to set, and the second token is the type. So, for "experiment" we look at the URL for a pid/eid or exptidx, etc, sanity check them (safe for a DB query), and then try to find that experiment in the DB. If it maps to an experiment, set global variable $experiment to the object. Since its a required argument, produce an error if not supplied. Similar treatment for optional arguments, with the obvious difference. The goal is to have ALL argument processing in one place, consistent, and correct. I've found numerous places where we leak unchecked arguments into queries. It also cuts out a lot of duplicated code. * To make the above easier to deal with, I've been replacing lots of hardcoded URLS in the code of the form: foo.php3?pid=$pid&eid=$eid ... with CreateURL("foo", $experiment) which creates and returns the neccessary url string, by looking at the type of its arguments (experiment, template, instance, etc.) Eventually plan to replace them all so that URL handling throughout the code is all defined in one place (all the new URL code is in url_defs.php). * I have cranked up error reporting to tell me anytime a variable is used before it is initialized, plus a bunch of other stuff that PHP deems improper. Think of it like -Wall ... and boy we get a lot of warnings. A very large percentage of the diffs are to fix all these warnings. The warnings are currently going to /usr/testbed/log/php-errors.log, and I'll be adding a script to capture them each night and mail them to tbops. This file also gets errors (this will be a change for developers; rather then seeing errors and warnings dumped in the middle of web pages, they will go to this file instead). * Major refactoring of the code. More objects (nodes, images, osids). Moving tons of queries into the objects in the hopes of someday getting to a point where we can split the web interface onto a different server. Lots of general cleanup.
-
Dan Gebhardt authored
This file was used for "human reference" when comparing to the nodes Emulab knows about.
-
Leigh B. Stoller authored
-
- 10 Feb, 2007 1 commit
-
-
David Johnson authored
-
- 09 Feb, 2007 2 commits
-
-
David Johnson authored
-
Leigh B. Stoller authored
day errors to tbops. The hope is that this will annoy us enough to fix them. Runs from cron just after midnight.
-
- 08 Feb, 2007 1 commit
-
-
Jay Lepreau authored
-
- 07 Feb, 2007 6 commits
-
-
Jonathon Duerig authored
Upgraded monitor to deal with udp, udp pseudo-connections, version 3 libnetmon format, version 1 magent format, fixed timing issue, generalized the difference between sockets and connections, and others.
-
David Johnson authored
libdb.pm.in. There's a nasty little hack to deal with forks, because the underlying python mysql db module does not help us deal with them. Basically, there is no way (and I mean no way!) to close a connection in the child without actually sending a disconnect to the server... so the parent's connection gets killed too. The only way around this is to hack the Python C API wrapper that the mysql python module is built on. For now, we just close off both connections before a fork via a TBDBPreFork(), and restore them implicitly on the first query after the fork. It sucks, but it's the best we can do until hacking the mysql module. Anyway, the big fix is that testbed-ops no longer gets spammed with DBQuery failures; they are retried just like in libdb.pm.in.
-
David Johnson authored
database as primary, but are recording all slice state changes on the new PLC database so the switchover should be seamless. * GNUMakefile.in: add mod_PLC4.py.in * mod_PLC4.py.in: more API changes. * libplab.py.in: add support for saving state at two PLCs, one primary, one "compat". * mod_PLCNM.py.in: change URL to access old xmlrpc server since PlanetLab went ahead and changed DNS.
-
Mike Hibler authored
-
Pramod R Sanaga authored
-
Mike Hibler authored
-