- 24 Feb, 2002 2 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
variable, which is now references in the toplevel GNUmakefile.in file.
-
- 22 Feb, 2002 1 commit
-
-
Leigh B. Stoller authored
link on the Begin Experiment page, remove the admin only test, and make the palette bigger.
-
- 21 Feb, 2002 7 commits
-
-
Chad Barb authored
-
Leigh B. Stoller authored
system, of the form: link0 fxp0 pipenumber1 link0 fxp1 pipenumber2 link1 fxp1 pipenumber
-
Chad Barb authored
-
Robert Ricci authored
-
Robert Ricci authored
When dealing with trunks, since they may be EtherChannels, we have to make another lookup on the switch to get the ifIndex for the whole channel - can't just use the ifIndex of one of the ports like you can from the Cisco CLI. These changes make snmpit slightly slower - it now has to get more information from the switches when it's going to create or delete VLANs. However, this is on the order of fractions of seconds, so it shouldn't be too noticable.
-
Robert Ricci authored
to real VLAN numbers on the swtiches.
-
Leigh B. Stoller authored
scheme that we discussed in email. Notifications and subscriptions now take an "address_tuple" argument (I know, crappy name) that is a structure that looks like this: char *site; /* Which Emulab site. God only */ char *expt; /* Project and experiment IDs */ char *group; /* User defined group of nodes */ char *host; /* A specific host */ char *objtype; /* LINK, TRAFGEN, etc ... */ char *objname; /* link0, cbr0, cbr1, etc ... */ char *eventtype; /* START, STOP, UP, DOWN, etc ... */ These can be a specific value, ADDRESSTUPLE_ANY if you are a subscriber, or ADDRESSTUPLE_ALL if you are a producer. The reason for the distinction is that you can optimize the match expression with the extra bit of information, and the above structure can make for a fairly lengthy match expression, which takes more time of course. You should use address_tuple_alloc() and address_tuple_free() rather than allocating them yourself. Note that host above is actually the ipaddr of control interface. This turns out to be more convenient since free nodes do not have virtual names. Also added a new tbgen directly. This directory includes 3 programs in the making: tbmevd: Is the Testbed Master Event Daemon, to be run on boss and will handle TBCONTROL events (reboot, reload, etc). It is just a shell of a program right now, that takes the events but does not do anything useful with them. Have not defined what the events are, and what DB state will be modified. tbmevc: Is the Testbed Master Event Client (akin to tmcc). It generates TBCONTROL events which the tbmevd will pick up and do something useful with. This program is intended to be wrapped by a perl script that will ask the tmcd for the name of the boss (running the event daemon). sample-client: This is a little client to demonstrate how to connect to the event system and use the address tuple to subscribe to events, and then how to get information out of notifications. Note that I have not created a proper build environment yet, so new programs should probably go in the event dir for now, and link using the same approach as in tbgen/GNUmakefile.in.
-
- 20 Feb, 2002 3 commits
-
-
Robert Ricci authored
As much of it as possible switch-independant, and put in snmpit_lib. Should work for arbitrarily complicated switch toplogies, as long as there are not multiple trunks between two switches. (Multiple ports combined into one trunk are fine, however.) As a result of this, VLAN creations and deletions now need to operate on all switches, not just on the ones that have ports in the VLAN. This is because the traffic may have to traverse switches that have no ports in the VLAN to reach other switches that do. Not called yet. I've done simple testing, but need to do more, as this could get us into major trouble if it has bugs.
-
Leigh B. Stoller authored
-
Jay Lepreau authored
-
- 19 Feb, 2002 7 commits
-
-
Chad Barb authored
-
Leigh B. Stoller authored
all put together. Use --enable-events.
-
Leigh B. Stoller authored
Also several changes for building on FreeBSD. I've left the older Makefiles in place so Ian can continue to build in his environmant (Linux?).
-
Ian Murdock authored
Fixed typo in API (s/event_notification/event_notification_t/). Tell user (in README) to configure Elvin library with --enable-threads to enable threaded API support. Removed instructions on enabling server discovery feature (now optional). Document event_register interface changes ("threaded" arguement, which allows caller to choose between the thread-safe "threaded" API and the simpler "sync" API). Mention (in API) that event_notify and event_schedule don't deallocate notification.
-
Ian Murdock authored
-
Ian Murdock authored
-
Ian Murdock authored
the threaded API; otherwise, use the sync API. This option allows multi-threaded programs to access the threaded API, which is thread- safe.
-
- 18 Feb, 2002 1 commit
-
-
Ian Murdock authored
-
- 17 Feb, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 14 Feb, 2002 7 commits
-
-
Robert Ricci authored
-
Leigh B. Stoller authored
when backing up (cause of an error that needs to be fixed) since not all browsers handle this the same. Instead, redraw the form with all of the original info and a list of error messages at the top. Conceptually simple change, but it turns out to be a pain to implement since you need to combine the form and processing code in one page (well, its just a lot easier to do that), and then change all of the forms to deal with a "default" value. That is, each different kind of input tag (text, radio, select, checkbox, etc.) requires slightly different changes to do that. Lots of forms, lots of entries on the forms, and its a long slow tedious process. Much nicer though, although the code is a bit harder to grok. At the same time, I added a lot more sanity checks of the information being passed in. The other change is to deal with how browsers handle the back button on a form thats been properly submitted. Not all browsers use the cache directives the same, and I was often typing back, only to have some form get reposted. Thats a major pain in the butt. The way to deal with that is to have the processor send out a Location header, which modifies the browser history so that the post is no longer in the history. You back up straight to the unposted form (if its in the cache). I've done this to only some forms, since its a bit of a pain to rework things so that you can jump ahead to a page that spits out the requisite warm fuzzies for the specific operation just completed. I've done newproject, joinproject, update user info, newimageid, and newimaged_dz forms.
-
Leigh B. Stoller authored
emulab address while I'm at it.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
an infinite loop rather easily via the NS file TCL hooks. Added a perl wrapper around parse.tcl called parse-ns, which forks a child to run the parser. The parser is invoked "nice +10" and the CPU limit for the child is set to 60 seconds, which should be enough for any parse. If the limit is exceeded, send email to tbops since this indicates a big problem or a user being dumb/malicious.
-
Ian Murdock authored
-
- 13 Feb, 2002 6 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
installed.
-
Leigh B. Stoller authored
-
Chad Barb authored
-
Chad Barb authored
-
Chad Barb authored
Second version.
-
- 12 Feb, 2002 5 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Robert Ricci authored
the defs file. Re-arranged some of the existing snippets to make it somewhat more cohesive, though it could still use a lot more work in this area. Also, moved all of the remaining stuff about what to copy from an old boss node (which was the original purpose of the document) to the end, so that it's more geared toward people setting up their own boss. Still needs some documentation (and probably a script for auto-generating) DNS config files.
-
Leigh B. Stoller authored
consistent 0ms when the intent is no delay, and add an explantion of what 0ms means (no darling, it doesn't mean that packets travel through an ethernet wormhole).
-