- #281: Add
NiciraRegLoad
action. - #282: Add
NiciraResubmit
action. - #283: Add
SetMetadata
action. - #284: Enable masking with reg0-reg7.
- #285: Add Nicira
SendOutPort
action.
- #274: Add
SetSourceMacAddress
action. - #275: Add
SetDestinationMacAddress
action. - #276: Add
SetArpOperation
action. - #277: Add
SetArpSenderProtocolAddress
action. - #278: Add
SetArpSenderHardwareAddress
action. - #280: Add
NiciraRegMove
action.
- Remove
OpenFlow10
namespace fromPio::OpenFlow10::SetSourceMacAddress
andPio::OpenFlow10::SetDestinationMacAddress
.
- #267: Add Queue Stats Request message generator.
- #266: Add Port Stats Request message generator.
- #252: Add NiciraResubmit and NiciraResubmitTable actions.
- #251: Add Table Stats Request message generator.
- #250: Add Flow Removed message parser.
- #272: Rename
Match
option::ip_source_address
->:source_ip_address
and:ip_destination_address
->:destination_ip_address
. - #271: Rename
Match
option::ether_destination_address
->:destination_mac_address
. - #270: Rename
Match
option::ether_source_address
->:source_mac_address
. - #269: Rename
SetIpSourceAddress
->SetSourceIpAddress
andSetIpDestinationAddress
->SetDestinationIpAddress
. - #268: Rename
SetEtherSourceAddress
->SetSourceMacAddress
andSetEtherDestinationAddress
->SetDestinationMacAddress
. - #265: Rename
SetIpTos
->SetTos
.
- #244: Support ARP in
ExactMatch.new
.
- #242: Fix
Parser#read
to avoid fail in parsing unsupported eth_type frame.
- #238:
Features::Reply#datapath_id
doesn't return an Integer.
- #203: Add new classes
Pio::OpenFlow10::DescriptionStats::Request
,Pio::OpenFlow10::DescriptionStats::Reply
,Pio::OpenFlow10::FlowStats::Request
,Pio::OpenFlow10::FlowStats::Reply
,Pio::OpenFlow10::AggregateStats::Request
,Pio::OpenFlow10::AggregateStats::Reply
.
- #214: Add new class
Pio::OpenFlow10::Error::HelloFailed
. - #215: Add new class
Pio::OpenFlow13::Error::HelloFailed
. - #216: Add new class
Pio::OpenFlow10::Error::BadRequest
. - #217: Add new class
Pio::OpenFlow13::Error::BadRequest
.
- #211: Add new classes
Pio::FlowStats::Request
andPio::FlowStats::Reply
.
- #209:
Pio::OpenFlow.read
cannot parse Barrier messages.
- #208:
Pio::FlowMod.new
doesn't allow:idle_timeout
and:hard_timeout
options.
- #201: Add oxm experimenter support (OpenFlow1.3).
- #202: Add
Pio::OpenFlow.switch_version
method. - #205: Add new classes
Pio::OpenFlow10::Barrier::Request
,Pio::OpenFlow10::Barrier::Reply
. - #207: Add new method
Pio::OpenFlow.read
- #188: Add PacketIn#in_port (OpenFlow1.3).
- #189: Add PacketIn#datapath_id= (OpenFlow1.3).
- #190: Add PacketOut#to_binary (OpenFlow1.3).
- #191: Add GotoTable#to_binary_s.
- #192: Add Meter#to_binary_s.
- #193: Add WriteMetadata#to_binary_s.
- #186: Add the missing
FlowMod#to_binary
method.
- #183: Add new class
Pio::PacketIn
(OpenFlow1.3). - #185: Add new classes
Pio::Match::TunnelId
andPio::Match::MaskedTunnelId
- #184: Add new classes
Pio::Match::ArpOp
,Pio::Match::ArpSenderProtocolAddress
,Pio::Match::ArpTargetProtocolAddress
,Pio::Match::ArpSenderHardwareAddress
,Pio::Match::ArpTargetHardwareAddress
,Pio::Match::MaskedArpSenderProtocolAddress
,Pio::Match::MaskedArpTargetProtocolAddress
,Pio::Match::MaskedArpSenderHardwareAddress
andPio::Match::MaskedArpTargetHardwareAddress
- #177: Add new class
Pio::PacketIn
(OpenFlow1.3). - #173: Add new classes
Pio::Match::VlanVid
,Pio::Match::VlanPcp
. - #174: Add new classes
Pio::Match::IpDscp
,Pio::Match::IpEcn
. - #178: Add new classes
Pio::Match::SctpSourcePort
,Pio::Match::SctpDestinationPort
. - #180: Add new classes
Pio::Match::Icmpv4Type
,Pio::Match::Icmpv4Code
.
- #179: Fix wrong OXM length.
- #164: Add new classes
Pio::FlowMod
,Pio::Apply
,Pio::GotoTable
,Pio::WriteMetadata
,Pio::Meter
andPio::SendOutPort
.
- #167: Fix PacketIn accessor methods (raw_data = VLAN tagged UDP).
- Add attr writers to
Pio::Match
andPio::ExactMatch
.
Lldp#port_number
returns primitive Ruby objects.
- Deprecated
Pio::Mac#== Integer
. Pio::PacketIn#source_mac
andPio::PacketIn#destination_mac
returnsPio::Mac
.
- Renamed
Pio::PacketIn#data
=>Pio::PacketIn#raw_data
. - Renamed
Pio::PacketOut#data
=>Pio::PacketOut#raw_data
. - Fix behavior of
IPv4Address#eql?
andIPv4Address#hash
.
- #129: Add new class
Pio::Udp
.
- #128: Field accessors return Ruby primitives (Fixnum, Symbol, etc.).
- #127: Make OpenFlow classes thread safe.
- #126: Add new class
Pio::PortStatus
. - #126: Add new methods
Pio::Type::OpenFlow::PhyPort#up?
,Pio::Type::OpenFlow::PhyPort#down?
,Pio::Type::OpenFlow::PhyPort#local?
,Pio::Type::OpenFlow::PhyPort#datapath_id
andPio::Type::OpenFlow::PhyPort#dpid
. - #126: Add new methods
Pio::PacketIn#lldp?
. - #126: Add new methods
Pio::Features::Reply#physical_ports
.
- #125: Add new accessor methods
Pio::PacketIn#datapath_id
andPio::PacketIn#dpid
.
- #124: Add new methods
Pio::PacketIn#source_mac
andPio::PacketIn#destination_mac
.
- #123: Add new class
Pio::ExactMatch
.
- #121: Fix behavior of
Pio::Match#==
andPio::SendOutPort#==
.
- #116: Support Cisco-style MAC addresses.
- #108: Added new class
Pio::FlowMod
andPio::Match
.
- #104: Fix bug when parsing
Pio::PacketOut
withPio::StripVlanHeader
action.
- #103: Added new class
Pio::PacketOut
.
- #102: Added new class
Pio::PacketIn
.
- #100: Fix bug when passing
ports:
option toPio::Features::Request.new
.
- Updated bundled gems.
- Modernized Gemfile and .gemspec.
- Renamed
version
=>ofp_version
- Added new class
Pio::Features
,Pio::Features::Request
andPio::Features::Reply
- Renamed
rake PCAP='foo.pcap' dump_pcap
=>rake PACKET_FILE='foo.pcap' dump
- Added new class
Pio::Echo
,Pio::Echo::Request
andPio::Echo::Reply
.
- Set hello message type = 0.
- Added new class
Pio::Hello
.
- Added new rake task
cucumber
. - Added new rake task
dump_pcap
.
- Added new classes
Pio::Dhcp
,Pio::Dhcp::Discover
,Pio::Dhcp::Offer
,Pio::Dhcp::Request
andPio::Dhcp::Ack
.
- Added new class alias
Pio::ICMP
=>Pio::Icmp
. - Added new class alias
Pio::ARP
=>Pio::Arp
. - Added new class alias
Pio::LLDP
=>Pio::Lldp
. - Added new class alias
Pio::DHCP
=>Pio::Dhcp
.