This format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Adapter::get_mtu
,set_dns_servers
, andAdapter::get_active_network_interface_gateways
: nulldotblack/wintun#13Error::ShuttingDown
: nulldotblack/wintun#14
- Adding the
ShuttingDown
variant towintun::Error
breaks exhastive matches on previous versions.wintun::Error
is now marked#[non_exhaustive]
to make future additions backwards compatable
Adapter::get_mtu
: nulldotblack/wintun#11
- Improved formatting of errors: nulldotblack/wintun#11
- Support for non 32bit x86 and arm targets in all three examples
- Adapter docs
- udp-echo example which mirrors packets via the tun interface
Adapter::get_name
,Adapter::set_name
, andAdapter::get_guid
Adapter::set_address
Adapter::set_gateway
,Adapter::set_netmask
, orAdapter::set_network_addresses_tuple
to set all three at once- Easily configure adapter address, netmask, and gateway properties to more easily control how it interacts with the Windows networking stack
- And
Adapter::get_addresses
,Adapter::get_gateways
,Adapter::get_netmask_of_address
to read this state
- Renamed
enum ApiError
->enum Error
and added more variants.- All functions returning
wintun::Result
are effected.
- All functions returning
- Removed
pool: &str
parameter fromAdapter::create
as this was removed from the wintun c library - Changed return type of
Session::get_read_wait_event
fromResult<winnt::HANDLE, ()>
toResult<windows::Win32::HANDLE, wintun::Error>
Plus internal refactoring and cleanup by @ssrlive: nulldotblack/wintun#7. Thanks!
Type in readme
Added support for wintun 0.14.
- Wintun driver versions before
0.14
are no longer support due to beraking changes in the C API Adapter::create
returns aResult<Adapter, ...>
instead of aResult<CreateData, ...>
. This was done because the underlying Wintun function was changed to only return an adapter handleAdapter::create
the pool parameter was removed because it was also removed from the C functionAdapter::delete
takes no parameters and returns aResult<(), ()>
. Theforce_close_sessions
parameter was removed because it was removed from the C function. Same for the bool inside the Ok(..) variantAdapter::create
andAdapter::open
returnArc<Adapter>
instead ofAdapter
get_running_driver_version
now returns a proper Result<Version, ()>.
reset_logger
function to disable logging after a logger has been set.
- Readme on crates.io
panic_on_unsent_packets
feature flag to help in debugging ring buffer blockage issues
- Cargo.toml metadata to include
package.metadata.docs.rs.default-target
. Fixes build issue on docs.rs (we can only build docs on windows, 0.1.1 doesn't work)
docs.rs testing
- Cargo.toml metadata to build on linux
First release with initial api