Skip to content

Releases: NIKSS-vSwitch/nikss

v0.3.1

19 Jan 08:37
9403cb5
Compare
Choose a tag to compare

Mostly bug fixes and preparation to use in Stratum.

How to update from v0.3.0

There are no changes at C API or CLI level, so update should be straightforward.

Now cmake will check for dependencies installation. If dependencies are installed in a non-standard location, some errors may occur when invoking cmake.

What's Changed

  • Make pipeline information more accurate by @tatry in #87
  • Invalid byte order on single entry get in Counter, Meter and Register by @tatry in #88
  • Lower minimum required cmake version by @tatry in #92
  • Add extern "C" clause to the public header files by @tatry in #93
  • Refactor CMakeLists.txt. Add custom target for headers installation by @tatry in #94

Full Changelog: v0.3.0...v0.3.1

v0.3.0

15 Dec 12:26
929c68e
Compare
Choose a tag to compare

Mostly bug fixes and improvement release. There are introduced two main new features:

  • Added Dockerfile for docker images.
  • Fixed support for fields wider than 64 bits.

How to update from v0.2.0

There are no changes at C API or CLI level, so update should be straightforward.

The one thing which could be considered is that fields wider than 64 bits have network byte order in dataplane. Using BTF mode byte order is handled by the library and is transparent, so behaves as usual. Without BTF mode byte order is not changed for such fields, so you have to change it on your own.

What's Changed

  • Update README after renaming by @osinstom in #74
  • Allow read register without entries by @tatry in #78
  • Improve resource management in value_set API by @tatry in #79
  • Improve documentation by @tatry in #76
  • Add mailing list and other modifications to README by @osinstom in #83
  • Add Dockerfile for NIKSS by @osinstom in #81
  • Fix linter checks on new runners using Ubuntu 22.04 by @tatry in #86
  • IPv6 CLI parser and support for wide fields in network byte order by @tatry in #80

Full Changelog: v0.2.0...v0.3.0

v0.2.0

17 Oct 09:34
8d73a00
Compare
Choose a tag to compare

Starting from this release we use new project name nikss.

How to update from v0.1.0

There is no changes in behavior of our library, so there is no need to change application logic.

Follow steps below to update:

  • (Recommended): Remove existing installation to avoid confusions. Because generated makefile doesn't provide uninstall target, files have to be removed manually. Files to be removed, assuming default prefix /usr/local, are:

    • /usr/local/bin/psabpf-ctl
    • /usr/local/lib/libpsabpf.so (if option -DBUILD_SHARED was set to on)
  • Build and install library as described in README.md.

  • New project name causes new prefix for all API objects, so scan your code and replace all occurrence of (case sensitive):

    • psabpf into nikss
    • PSABPF into NIKSS
    • PSAeBPF into NIKSS (if python scripts are used)

    If something doesn't work let's see PR #73 and check how it was changed.

What's Changed

Full Changelog: v0.1.0...v0.2.0

v0.1.0

17 Oct 07:31
4a8a1ae
Compare
Choose a tag to compare

We switch to the new project name nikss from psabpf for our library, so this is the latest version that uses name psabpf.

We no longer support this version. Please switch to v0.2.0 or later version.

What's Changed

  • Remove bpftool dependency by @tatry in #4
  • Add licence to repository by @tatry in #6
  • Add support for digests by @tatry in #5
  • Implement 'mcast-grp' functions by @tatry in #7
  • Support for Counter by @tatry in #8
  • Add support for DirectCounter in table add/update by @tatry in #10
  • Add feature of adding tuples to tuples_map by @kmateuszssak in #9
  • Add support for DirectMeter in table add/update by @tatry in #11
  • Implement 'table default set' command by @tatry in #13
  • Implement 'table get' command for single direct table entry by @tatry in #12
  • Enable PSA-eBPF integration with Mininet by @osinstom in #29
  • psabpf: Add shared library generation by @mestery in #31
  • Revert "psabpf: Add shared library generation" by @tatry in #32
  • psabpf: Add shared library generation by @mestery in #34
  • Add support for indirect table in 'table get' command by @tatry in #28
  • CI: Initial GitHub Actions support by @mestery in #36
  • Add register read command by @kmateuszssak in #27
  • Fix CI tests by @tatry in #38
  • Add register set command by @kmateuszssak in #41
  • Add support for dump all table entries with table get command by @tatry in #46
  • ci: use dependabot on GH actions by @mestery in #40
  • Bump actions/checkout from 2 to 3 by @dependabot in #47
  • Change CLI naming convention and update documentation by @tatry in #39
  • Remove extern type from output JSON by @tatry in #49
  • Implement table get default entry by @tatry in #48
  • Print port number when adding new interface to switch by @kmateuszssak in #51
  • Specify action by name by @tatry in #43
  • Change behavior of 'digest get' command by @tatry in #54
  • Refactor 'meter' command by @tatry in #52
  • Use libbpf to create & attach eBPF programs to TC hook by @tatry in #57
  • Add value_set commands by @kmateuszssak in #53
  • Implement 'action-selector get' command by @tatry in #56
  • Skip bpf_spin_lock field by @kmateuszssak in #59
  • Show pipeline status by @tatry in #58
  • Implement support for listing clones sessions and multicast groups by @tatry in #60
  • Create inner maps with BTF to support kernels starting from 5.15 by @tatry in #62
  • Enclose output member/group reference within JSON on add by @tatry in #63
  • Fix prefix length calculation in LPM tables for exact match type keys by @tatry in #65
  • T16: Extend ActionSelector to support ActionProfile by @tatry in #66
  • Add C linter by @tatry in #68
  • Add missing documentation for ActionProfile and PVS by @tatry in #70

New Contributors

Full Changelog: https://github.com/NIKSS-vSwitch/nikss/commits/v0.1.0