Sha256: 8fe25950909e380deb4b3b40eaf686caa4915f10cb5914e79fbfb40763a19823
Contents?: true
Size: 1.95 KB
Versions: 1
Compression:
Stored size: 1.95 KB
Contents
require 'bindata' require 'pio/type/mac_address' module Pio module Type module OpenFlow # Description of a physical port class PhyPort < BinData::Record extend Flags # enum ofp_port_config flags_32bit :port_config, [:port_down, :no_stp, :no_recv, :no_recv_stp, :no_flood, :no_fwd, :no_packet_in] # enum ofp_port_state flags_32bit :port_state, link_down: 1 << 0, stp_listen: 0 << 8, stp_learn: 1 << 8, stp_forward: 2 << 8, stp_block: 3 << 8 # enum ofp_port_features flags_32bit :port_feature, [:port_10mb_hd, :port_10mb_fd, :port_100mb_hd, :port_100mb_fd, :port_1gb_hd, :port_1gb_fd, :port_10gb_fd, :port_copper, :port_fiber, :port_autoneg, :port_pause, :port_pause_asym] endian :big uint16 :port_no mac_address :hardware_address string :name, length: 16, trim_padding: true port_config :config port_state :state port_feature :curr port_feature :advertised port_feature :supported port_feature :peer attr_accessor :datapath_id alias_method :dpid, :datapath_id def number port_no end def mac_address hardware_address end def up? !down? end def down? config.include?(:port_down) || state.include?(:link_down) end def local? port_no == PortNumber::NUMBERS[:local] end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pio-0.15.0 | lib/pio/open_flow/phy_port.rb |