Migrate 25 crates to monorepo. am: 7fd5c20033

Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/macaddr/+/3246674

Change-Id: I3efd4d2c118dd8a0e660c9c25af490450cd7fa5b
Signed-off-by: Automerger Merge Worker <[email protected]>
tree: c10360f4ef942c7303506406f084b0754de91b0a
  1. src/
  2. .cargo_vcs_info.json
  3. .editorconfig
  4. .gitignore
  5. Android.bp
  6. Cargo.toml
  7. Cargo.toml.orig
  8. CHANGELOG.md
  9. LICENSE-APACHE
  10. LICENSE-MIT
  11. METADATA
  12. MODULE_LICENSE_APACHE2
  13. OWNERS
  14. README.md
  15. rustfmt.toml
README.md

macaddr

MAC address types for Rust

Latest Version Latest Version Build Status Coverage Status Minimum rustc version Apache 2.0 OR MIT licensed unsafe forbidden

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!

Installation

Add this to your Cargo.toml

[dependencies]
macaddr = "1.0"

Usage

Check out the documentation for each type available, all of them have a plenty of examples.

License

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.