Class: Nl::Linux::Wireguard::Messages::DumpGetDeviceRequest
- Inherits:
-
Genl::Message
- Object
- Raw::Message
- Genl::Message
- Nl::Linux::Wireguard::Messages::DumpGetDeviceRequest
- Defined in:
- nl-linux/generated/nl/linux/wireguard.rb
Overview
Retrieve WireGuard device
The command should be called with one but not both of:
- ``WGDEVICE_A_IFINDEX``
- ``WGDEVICE_A_IFNAME``
The kernel will then return several messages (``NLM_F_MULTI``). It is
possible that all of the allowed IPs of a single peer will not fit
within a single netlink message. In that case, the same peer will be
written in the following message, except it will only contain
``WGPEER_A_PUBLIC_KEY`` and ``WGPEER_A_ALLOWEDIPS``. This may occur
several times in a row for the same peer. It is then up to the receiver
to coalesce adjacent peers. Likewise, it is possible that all peers will
not fit within a single message. So, subsequent peers will be sent in
following messages, except those will only contain ``WGDEVICE_A_IFNAME``
and ``WGDEVICE_A_PEERS``. It is then up to the receiver to coalesce
these messages to form the complete list of peers.
Since this is an ``NLA_F_DUMP`` command, the final message will always
be ``NLMSG_DONE``, even if an error occurs. However, this ``NLMSG_DONE``
message contains an integer error code. It is either zero or a negative
error code corresponding to the errno.
Requires CAP_NET_ADMIN in the user namespace owning the network namespace.
Constant Summary collapse
- TYPE =
0- FIXED_HEADER =
nil- ATTRIBUTE_SET =
AttributeSets::Wgdevice
- ATTRIBUTES =
Ractor.make_shareable(%i[ifindex ifname])
Instance Attribute Summary
Attributes included from StructuredPayload
Instance Method Summary collapse
Methods inherited from Genl::Message
Methods inherited from Raw::Message
#append_attribute, decode, #initialize
Methods included from StructuredPayload
Constructor Details
This class inherits a constructor from Nl::Raw::Message
Instance Method Details
#ifindex ⇒ Integer
525 |
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 525 def ifindex; attributes[:"ifindex"]&.value; end |
#ifname ⇒ String
529 |
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 529 def ifname; attributes[:"ifname"]&.value; end |