Class: Nl::Linux::OvsPacket::Notifications::Action

Inherits:
Genl::Message show all
Defined in:
nl-linux/generated/nl/linux/ovs_packet.rb

Overview

Notify userspace as requested by an OVS_ACTION_ATTR_USERSPACE action.

Constant Summary collapse

TYPE =
2
FIXED_HEADER =
Structs::OvsHeader
ATTRIBUTE_SET =
AttributeSets::Packet
ATTRIBUTES =
Ractor.make_shareable(%i[packet key actions userdata egress_tun_key mru len hash])

Instance Attribute Summary

Attributes included from StructuredPayload

#attributes, #fixed_header

Instance Method Summary collapse

Methods inherited from Genl::Message

decode

Methods inherited from Raw::Message

#append_attribute, decode, #initialize

Methods included from StructuredPayload

#encode, #initialize

Constructor Details

This class inherits a constructor from Nl::Raw::Message

Instance Method Details

#actions ⇒ String

Nested OVS_ACTION_ATTR_* attributes. Defined as binary for the same reason as key.

Returns:

  • (String)

See Also:



369
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 369

def actions; attributes[:"actions"]&.value; end

#dp_ifindex ⇒ Integer

Returns:

  • (Integer)


351
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 351

def dp_ifindex; fixed_header.dp_ifindex; end

#egress_tun_key ⇒ String

Nested OVS_TUNNEL_KEY_ATTR_* for output tunnel metadata.

Returns:

  • (String)

See Also:



379
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 379

def egress_tun_key; attributes[:"egress_tun_key"]&.value; end

#hash ⇒ Integer

Packet hash, low 32 bits are skb hash, upper bits are flags.

Returns:

  • (Integer)

See Also:



394
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 394

def hash; attributes[:"hash"]&.value; end

#key ⇒ String

Nested OVS_KEY_ATTR_* attributes, extracted flow key. Defined as binary because the key attribute-set belongs to the ovs_flow family spec; cross-spec references are not supported.

Returns:

  • (String)

See Also:



363
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 363

def key; attributes[:"key"]&.value; end

#len ⇒ Integer

Packet size before truncation.

Returns:

  • (Integer)

See Also:



389
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 389

def len; attributes[:"len"]&.value; end

#mru ⇒ Integer

Maximum received IP fragment size.

Returns:

  • (Integer)

See Also:



384
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 384

def mru; attributes[:"mru"]&.value; end

#packet ⇒ String

Packet data, from the start of the Ethernet header.

Returns:

  • (String)

See Also:



356
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 356

def packet; attributes[:"packet"]&.value; end

#userdata ⇒ String

Opaque userspace cookie from OVS_USERSPACE_ATTR_USERDATA.

Returns:

  • (String)

See Also:



374
# File 'nl-linux/generated/nl/linux/ovs_packet.rb', line 374

def userdata; attributes[:"userdata"]&.value; end