net: Add new wol command - Wake on LAN
authorLothar Felten <lothar.felten@gmail.com>
Fri, 22 Jun 2018 20:29:54 +0000 (22:29 +0200)
committerJoe Hershberger <joe.hershberger@ni.com>
Mon, 2 Jul 2018 19:14:20 +0000 (14:14 -0500)
commitd8970dae276377a0beff1c3e9d8b6f805ecf5cd5
treeeb3fdb9ef7d734fbca0d0a92ddd30915c52ba44a
parent318b5d76b6661dcaf6934b0a925bbcfdf0469069
net: Add new wol command - Wake on LAN

Add a new command 'wol': Wait for an incoming Wake-on-LAN packet or
time out if no WoL packed is received.
If the WoL packet contains a password, it is saved in the environment
variable 'wolpassword' using the etherwake format (dot or colon
separated decimals).

Intended use case: a networked device should boot an alternate image.
It's attached to a network on a client site, modifying the DHCP server
configuration or setup of a tftp server is not allowed.
After power on the device waits a few seconds for a WoL packet. If a
packet is received, the device boots the alternate image. Otherwise
it boots the default image.

This method is a simple way to interact with a system via network even
if only the MAC address is known. Tools to send WoL packets are
available on all common platforms.

Some Ethernet drivers seem to pad the incoming packet. The additional
padding bytes might be recognized as Wake-on-LAN password bytes.

By default enabled in pengwyn_defconfig.

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
cmd/Kconfig
cmd/Makefile
cmd/wol.c [new file with mode: 0644]
configs/pengwyn_defconfig
include/net.h
net/Makefile
net/net.c
net/wol.c [new file with mode: 0644]
net/wol.h [new file with mode: 0644]