This file lists the major changes between versions. For a more detailed list of every change, see the Git log.
- tbd
- Major: Update poke to version 14.
- Major: Merged the tun_interface and tap_interface classes into a single class called interface. The interface class can now create both TUN and TAP interfaces based on the interface_type parameter provided to the create methods config argument.
- Minor: Add initial macos/Darwin support.
- Major: Change interface from seperate args to a struct
- Patch: Only have CLI11 as a dependency if compilation is toplevel
- Minor: Add tap support and proper in repository testing
- Major: Updated poke to version 13.
- Minor: Added documentation for all functions in the
tun_interface
class. - Minor: Changed backend parameter order to always have the error code last.
- Patch: Removed duplicated code.
- Major: Updated poke to use version 12.
- Major: Updated poke to use version 11.
- Minor: Updated poke to use version 10.
- Major: Extended the log_callback to now also take a std::any user data argument.
- Patch: Upgraded poke to use 9.
- Patch: Upgraded abacus to use 6.
- Patch: Upgraded poke to use 8.0.0.
- Major: Update dependencies to use Poke 7.
- Patch: Fixed a bug where insufficient permissions would cause the library to assert instead of throwing an exception when using the exception-based API.
- Major: Use waf-tools 5.
- Minor: Support for TSO and UFO on Linux.
- Major: Upgrade to poke version 5.
- Major: Change structure so that details are now under
detail
namespace.
- Major: Added a dependency on poke
- Minor: Added an empty Windows and Mac implementation of tun_interface. Will throw errors if used.
- Patch: Renamed namespace linux to platform_linux to avoid conflicts with linux define set by gcc and clang.
- Patch: Removed check for OpenWRT as the library seems to compile with OpenWRT 21.02.0
- Patch: Removed an unnecessary header include causing redefinition of struct ethhdr
- Major: Do not prepend a protocol information header, i.e., add the IFF_NO_PI flag.
- Minor: Added CMake support.
- Minor: Updated waf.
- Major: Upgrade platform dependency.
- Patch: Disable OpenWRT platform.
- Minor: Upgrade to boost 4
- Major: Refactor project with an all new API.
- Major: Removed external boost dependency.
- Major: Added platform dependency.
- Major: Wanted device name must now be less than
IFNAMSIZ-1
. - Minor: Added
ipv4
andis_default_route_enabled
. - Major: Renamed
set_default_route
->enable_default_route
andremove_default_route
->disable_default_route
.
- Major: Removed a couple of abbreviations.
- Major: Changed API to take pointer and size instead of std::vector.
- Patch: Fixed make_tun_interface so that it now takes a const string reference to the dev name.
- Major: Removed dependency on Links.
- Minor: Added uint32_t mtu() const.
- Minor: Added set_mtu on tun_interface
- Patch: waf now only builds project for linux platforms
- Major: Added tun_interface class
- Major: Added nanonet scripts for quick testing
- Minor: Added tunnel example