STRUCT ETHTOOL_WOLINFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct ethtool_wolinfo(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸ’– and today's main character is struct ethtool_wolinfo β€” yes that's Wake-On-Lan configuration, the little struct that decides whether your NIC wakes up from its beauty sleep or just... doesn't πŸ’…


🌸 NAME 🌸

struct ethtool_wolinfo β€” Wake-On-Lan configuration 🫢


✨ SYNOPSIS ✨

okay so here's the whole glow-up, copy it exactly bestie:

struct ethtool_wolinfo {
    __u32 cmd;
    __u32 supported;
    __u32 wolopts;
    __u8 sopass[SOPASS_MAX];
 };

πŸŽ€ Members πŸŽ€

πŸ’« cmd

the command number, and it's literally ETHTOOL_GWOL or ETHTOOL_SWOL β€” get it? G for get, S for set 😌 no cap.

πŸ’« supported

a bitmask of WAKE_* flags for all the Wake-On-Lan modes that are supported πŸ”₯ and heads up: this one is read-only β€” you do not get to touch it, bestie, it's not yours πŸ™ˆ

πŸ’« wolopts

a bitmask of WAKE_* flags for the Wake-On-Lan modes that are actually enabled β€” this is the one you vibe with ⭐

πŸ’« sopass

the SecureOn(tm) password πŸŽ€ lowkey important detail: it's only meaningful if WAKE_MAGICSECURE is set in wolopts β€” otherwise it's just kinda there, existing, doing nothing πŸ’€


πŸ¦‹ SEE ALSO πŸ¦‹

okay bestie this list is LONG, like the way it just keeps going 😭 but every single one is iconic, so here we go β€” starting with the kernel file ./include/uapi/linux/ethtool.h:

  • struct ethtool_cmd(9)
  • struct ethtool_drvinfo(9)
  • struct ethtool_regs(9)
  • struct ethtool_eeprom(9)
  • struct ethtool_eee(9)
  • struct ethtool_modinfo(9)
  • struct ethtool_coalesce(9)
  • struct ethtool_ringparam(9)
  • struct ethtool_channels(9)
  • struct ethtool_pauseparam(9)
  • enum ethtool_stringset(9)
  • enum ethtool_mac_stats_src(9)
  • enum ethtool_module_power_mode_policy(9)
  • enum ethtool_module_power_mode(9)
  • enum ethtool_c33_pse_ext_state(9)
  • enum ethtool_c33_pse_ext_substate_mr_mps_valid(9)
  • enum ethtool_c33_pse_ext_substate_error_condition(9)
  • enum ethtool_c33_pse_ext_substate_mr_pse_enable(9)
  • enum ethtool_c33_pse_ext_substate_option_detect_ted(9)
  • enum ethtool_c33_pse_ext_substate_option_vport_lim(9)
  • enum ethtool_c33_pse_ext_substate_ovld_detected(9)
  • enum ethtool_c33_pse_ext_substate_power_not_available(9)
  • enum ethtool_c33_pse_ext_substate_short_detected(9)
  • enum ethtool_pse_types(9)
  • enum ethtool_c33_pse_admin_state(9)
  • enum ethtool_c33_pse_pw_d_status(9)
  • enum ethtool_podl_pse_admin_state(9)
  • enum ethtool_podl_pse_pw_d_status(9)
  • enum ethtool_mm_verify_status(9)
  • enum ethtool_module_fw_flash_status(9)
  • struct ethtool_gstrings(9)
  • struct ethtool_sset_info(9)
  • enum ethtool_test_flags(9)
  • struct ethtool_test(9)
  • struct ethtool_stats(9)
  • struct ethtool_perm_addr(9)
  • struct ethtool_tcpip4_spec(9)
  • struct ethtool_ah_espip4_spec(9)
  • struct ethtool_usrip4_spec(9)
  • struct ethtool_tcpip6_spec(9)
  • struct ethtool_ah_espip6_spec(9)
  • struct ethtool_usrip6_spec(9)
  • struct ethtool_flow_ext(9)
  • struct ethtool_rx_flow_spec(9)
  • struct ethtool_rxnfc(9)
  • struct ethtool_rxfh_indir(9)
  • struct ethtool_rxfh(9)
  • struct ethtool_rx_ntuple_flow_spec(9)
  • struct ethtool_rx_ntuple(9)
  • struct ethtool_dump(9)
  • struct ethtool_get_features_block(9)
  • struct ethtool_gfeatures(9)
  • struct ethtool_set_features_block(9)
  • struct ethtool_sfeatures(9)
  • struct ethtool_ts_info(9)
  • struct ethtool_per_queue_op(9)
  • struct ethtool_fecparam(9)
  • enum ethtool_fec_config_bits(9)
  • struct ethtool_link_settings(9)
  • enum phy_upstream(9)

and that's the whole page, bestie 🧚 ate and left no crumbs πŸ’…

sign-off time πŸŽ€ this little baddie lives in ./include/uapi/linux, it's dated October 2026, and the manual is the Kernel API Manual πŸ¦‹ k bye, go wake some LANs πŸ’œ

πŸ“¦ where this page comes from