• Leigh Stoller's avatar
    Add versioning support. This has been a minor problem, and is going to · 2d522296
    Leigh Stoller authored
    be a worse problem with remote nodes, where we will not be able to
    keep everyone up to date like we can in the local testbed case. I ran
    into this yesterday with the key distribution stuff for RON nodes,
    which require incompatable changes to the accounts info that is
    returned. So, tmcc now takes a [-v version] argument, which is passed
    through to tmcd in the request field. tmcd passes that version number
    (assumed to be an int) down, and the routines should look at that. We
    will need to make some structural changes in tmcd as we get more
    version skew, but for now this is fine. Anyway, tmcd/tmcc have a
    compiled in DEFAULT_VERSION (see decls.h). If no version is supplied,
    assume DEFAULT_VERSION (2), which covers all of the old images and yet
    to be updated current images. As the new tmcc makes it out, versions
    will be sent through. VERY IMPORTANT: The current version is placed in
    libsetup.pm. When you make incompatible changes, bump the version
    number is decls.h and libsetup.pm, recompile and install a new tmcc
    and the new libsetup.pm on the clients (and of course, tmcd on the
    server).
    
    Fixes to termination; Add signal handlers for HUP,INT,TERM, and make
    sure all the children get killed off before exiting. We still have
    some problems though; I think the children should wait until the
    current request is completed before exiting. I'll give that some more
    thought though since it easy to mess that stuff up (leave zombies).
    
    Add build_info[] to startup message to syslog. Good for debugging.
    Some minor cleanup and restructuring. Mike is gonna hate it.
    2d522296
Name
Last commit
Last update
apache Loading commit data...
assign Loading commit data...
autoconf Loading commit data...
capture Loading commit data...
db Loading commit data...
dhcpd Loading commit data...
discvr Loading commit data...
doc Loading commit data...
event Loading commit data...
hw_config Loading commit data...
ipod Loading commit data...
lib Loading commit data...
os Loading commit data...
pxe Loading commit data...
rc.d Loading commit data...
rpms Loading commit data...
security Loading commit data...
sensors Loading commit data...
sql Loading commit data...
sysadmin Loading commit data...
tbsetup Loading commit data...
testsuite Loading commit data...
tip Loading commit data...
tmcd Loading commit data...
utils Loading commit data...
vis Loading commit data...
www Loading commit data...
xmlrpc Loading commit data...
BUGS Loading commit data...
GNUmakefile.in Loading commit data...
GNUmakerules Loading commit data...
Makeconf.in Loading commit data...
PROJECTS Loading commit data...
README Loading commit data...
RESTRICTED-RIGHTS Loading commit data...
config.h.in Loading commit data...
configure Loading commit data...
configure.in Loading commit data...
defs-calfeld-emulab Loading commit data...
defs-default Loading commit data...
defs-mini Loading commit data...
defs-neo-paper Loading commit data...
defs-newbold-emulab Loading commit data...
defs-newbold-macdb Loading commit data...
defs-newbold-mini Loading commit data...
defs-ricci-emulab Loading commit data...
defs-ricci-neo-paper Loading commit data...
defs-shash-emulab Loading commit data...
defs-shash-mini Loading commit data...
defs-stoller-emulab Loading commit data...
defs-stoller-home Loading commit data...
defs-stoller-mini Loading commit data...