Another change for CMU; they have laptops that do not power up after a power cycle. For those we need to send wakeonlan packets to kick them. This is complicated by the fact that the laptops take an incredibly long time to go from poweron to a point where it will listen to a wakeonlan packet. No idea why. I use StateWait() to find out when the node hits bootinfo (which sends a PXEBOOTING event). Keep looping sending more wakeonlan packets until we hear from the node. Time out the operation after two minutes (probably need something to control this).
Another change for CMU; they have laptops that do not power up after a
power cycle. For those we need to send wakeonlan packets to kick them.
This is complicated by the fact that the laptops take an incredibly
long time to go from poweron to a point where it will listen to a
wakeonlan packet. No idea why. I use StateWait() to find out when the
node hits bootinfo (which sends a PXEBOOTING event). Keep looping
sending more wakeonlan packets until we hear from the node. Time out
the operation after two minutes (probably need something to control
this).

To find the outgoing interface required by tools/whol program, I look
in the interfces table for boss' control network.

The mac address of the target node comes from the interfaces table.

The flag that controls whether a node needs wakeonlan is in the
node_attributes table:

	mysql> insert into node_attributes set
	          attrkey='wakeonlan_afterpower',
		  attrvalue=1, node_id='pcxxx';

nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome