• Leigh Stoller's avatar
    Add support for dynamic registration of ports on experimental nodes so · 73102ef8
    Leigh Stoller authored
    that clients and servers can avoid using hardwired ports on those
    experimental nodes. I have added the following tmcd operation:
    
    	tmcc portregister <service> [<port>]
    
    where we assume its the control network IP (from the DB), and the pid/eid
    of the node the experiment belongs to. The given port is entered into
    the port_registration table for the experiment, using the service as the
    tag. Supplying port=0 clears the registration from the table.
    
    When called like:
    
    	tmcc portregister <service>
    
    we return the registered port, or nothing.
    
    I hacked up a little C library module in libtb so that there is something
    that looks like a C interface to this:
    
     	int
     	PortRegister(char *service, int port);
    
     	int
     	PortLookup(char *service, char *hostname, int namelen, int *port);
    
    The above routines call out to tmcc of course.
    
    Lastly, I changed the sync server and client to use the new port
    registration, via the library calls above.
    
    There are other emulab services that need to be changed as well, but
    they can be done on an as needed basis.
    73102ef8
Name
Last commit
Last update
account Loading commit data...
apache Loading commit data...
assign Loading commit data...
autoconf Loading commit data...
bugdb Loading commit data...
capture Loading commit data...
cdrom Loading commit data...
collab Loading commit data...
daikon Loading commit data...
db Loading commit data...
delay/linux Loading commit data...
dhcpd Loading commit data...
discvr Loading commit data...
doc Loading commit data...
event Loading commit data...
firewall Loading commit data...
hw_config Loading commit data...
hyperviewer Loading commit data...
image-test Loading commit data...
install Loading commit data...
ipod Loading commit data...
lib Loading commit data...
mote Loading commit data...
named Loading commit data...
os Loading commit data...
patches Loading commit data...
pelab Loading commit data...
pxe Loading commit data...
rc.d Loading commit data...
robots Loading commit data...
rpms Loading commit data...
security Loading commit data...
sensors Loading commit data...
sql Loading commit data...
ssl Loading commit data...
sysadmin Loading commit data...
tbsetup Loading commit data...
testsuite Loading commit data...
tip Loading commit data...
tmcd Loading commit data...
tools Loading commit data...
utils Loading commit data...
vis Loading commit data...
wiki Loading commit data...
www Loading commit data...
xmlrpc Loading commit data...
.loc-ignore Loading commit data...
BUGS Loading commit data...
GNUmakefile.in Loading commit data...
GNUmakerules Loading commit data...
GPL-COPYING Loading commit data...
LGPL-COPYING Loading commit data...
LICENSE Loading commit data...
Makeconf.in Loading commit data...
README Loading commit data...
TODO Loading commit data...
TODO.plab Loading commit data...
config.h.in Loading commit data...
configure Loading commit data...
configure.in Loading commit data...
defs-aerolab Loading commit data...
defs-calfeld-emulab Loading commit data...
defs-davidand-emulab Loading commit data...
defs-default Loading commit data...
defs-duerig-emulab Loading commit data...
defs-elabinelab Loading commit data...
defs-example Loading commit data...
defs-fish-emulab Loading commit data...
defs-gatech Loading commit data...
defs-johnsond-emulab Loading commit data...
defs-kwebb-emulab Loading commit data...
defs-newbold-emulab Loading commit data...
defs-newbold-macdb Loading commit data...
defs-ricci-emulab Loading commit data...
defs-shash-emulab Loading commit data...
defs-stoller-emulab Loading commit data...
defs-stoller-home Loading commit data...
defs-stoller-lbsdb Loading commit data...
defs-uky Loading commit data...
defs-wide Loading commit data...