auth/vendor/inet.af/netaddr
Maxim Lebedev faf5650e45
:pin: Upgraded and vendored go modules
2023-01-16 07:55:38 +06:00
..
.gitignore 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
.gitmodules 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
AUTHORS 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
LICENSE 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
README.md :pin: Upgraded and vendored go modules 2023-01-16 07:55:38 +06:00
fuzz.go 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
ipset.go 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
mask6.go 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
netaddr.go 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00
uint128.go 📌 Vendored dependencies 2022-06-09 22:35:23 +05:00

README.md

netaddr Test Status Go Reference

Deprecated

Please see https://pkg.go.dev/go4.org/netipx and the standard library's
net/netip.

What

This is a package containing a new IP address type for Go.

See its docs: https://pkg.go.dev/inet.af/netaddr

Status

This package is mature, optimized, and used heavily in production at Tailscale.
However, API stability is not yet guaranteed.

netaddr is intended to be a core, low-level package.
We take code review, testing, dependencies, and performance seriously, similar to Go's standard library or the golang.org/x repos.

Motivation

See https://tailscale.com/blog/netaddr-new-ip-type-for-go/ for a long
blog post about why we made a new IP address package.

Other links:

Testing

In addition to regular Go tests, netaddr uses fuzzing.
The corpus is stored separately, in a submodule,
to minimize the impact on everyone else.

To use:

$ git submodule update --init
$ go get -u github.com/dvyukov/go-fuzz/go-fuzz github.com/dvyukov/go-fuzz/go-fuzz-build
$ go-fuzz-build && go-fuzz