commit | 74bb008ae67e7793e0a4a5d08be231b84418bb8d | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <[email protected]> | Fri Mar 10 04:20:04 2023 +0000 |
committer | Automerger Merge Worker <[email protected]> | Fri Mar 10 04:20:04 2023 +0000 |
tree | 8f15ba3e99b73d800c773a193ff9c84a4368e8d1 | |
parent | 813e4c278df328a1bb24fcff8abd7c374fb63845 [diff] | |
parent | 733240c5d25553bc55b2e6a00df632438e427fd0 [diff] |
Snap for 9719949 from 2d4bb663ff9111828c9ffacfafba9cfb181ba4b6 to udc-release am: 733240c5d2 Original change: https://googleplex-android-review.googlesource.com/c/platform/external/rust/crates/macaddr/+/21946604 Change-Id: Ia4653ccd57dc9af714a1449a5243ab262b79ac5b Signed-off-by: Automerger Merge Worker <[email protected]>
MAC address types for Rust
This crate provides types for a MAC address identifiers, both in IEEE EUI-48 and EUI-64 formats.
It is like a std::net::SocketAddr
enum with a std::net::SocketAddrV4
and std::net::SocketAddrV6
members, but for MAC addresses instead.
Obviously, MAC address can be represented as a [u8; 6]
or [u8; 8]
, but it is error-prone and inconvenient, so here they are — MacAddr6 and MacAddr8 structs with helpful methods and standard Rust traits implementations, intended to be the first-class Rust objects.
And it is serde
- and no_std
-friendly also!
Add this to your Cargo.toml
[dependencies] macaddr = "1.0"
Check out the documentation for each type available, all of them have a plenty of examples.
Licensed under either of Apache License 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.